0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何将ADC与带有LCD的stm32 Discovery板一起使用

454398 来源:网络整理 作者:网络整理 2019-12-09 16:00 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

步骤1:ADC

使用HAL Cube,ADC的实现非常简单(在第1部分中提到)。

我正在使用 12位ADC模块

ADC预分频器= 8

转换数= 1

ADC分辨率= 128

采样时间为112个周期。

我们还可以将ADC与DMA一起使用。用于它的IRQ处理程序是 HAL_DMA_IRQHandler(AdcHandle.DMA_Handle) ,其中AdcHandle是ADC_HandleTypeDef类型。

要显示ADC值,我们必须使用uint32t uhADCxConvertedValue的外部值。它将值从0转换为4096(2 ^ 12),因此如果要显示从0开始的电压-3V,我们必须做简单的计算 uhADCxConvertedValue * 30/4095;

步骤2:编辑窗口小部件

如何将ADC与带有LCD的stm32 Discovery板一起使用

在segger的文档的500页上,有解释如何使用EDIT窗口小部件的信息。

要创建它,我们必须像在第1部分中创建按钮(1)一样,对其进行类似操作。要设置EDIT小部件参数,请在 WM_INIT_DIALOG case(2)中的小部件回调函数中执行此操作。我们还必须创建函数以附加ADC值编辑。我将在下面显示(3)。

/**** 1 **************************************************************************************************************/

#define ID_W0_EDIT0 (GUI_ID_USER + 3)

static const GUI_WIDGET_CREATE_INFO _aDialogCreate[] =

{

{ EDIT_CreateIndirect , 0 , ID_W0_EDIT0 , 178, 15, 40, 20 },

};

/**** 2 **************************************************************************************************************/

hItem = WM_GetDialogItem(hDlg, ID_W0_EDIT0);

EDIT_SetHexMode(hItem, 0x1234, 0, 0xffffff); // set your own parameters

/**** 3 **************************************************************************************************************/

static void _ShowADCval(void)

{

WM_HWIN hItem;

int adc_val = uhADCxConvertedValue * 30 / 4095;

hItem = WM_GetDialogItem(oscWindow, ID_W0_EDIT0);

EDIT_SetDecMode(hItem, adc_val, 0, 300, 1, GUI_EDIT_NORMAL);

}

步骤3:ADC图

该图显示了来自PA0引脚的ADC值电平。在第一张图片中,我将具有3V和GND的PA0连接到第二张图片中的PA0。在图表上,我们可以实时看到这些值。我也将编辑小部件放在右上角。如您所见,该值随图形而变化。

创建图形的功能类似于EDIT小部件的创建。

创建所有框架图,编辑和图形:

#define ID_W0 (GUI_ID_USER + 1)

#define ID_W0_GRAPH0 (GUI_ID_USER + 2)

#define ID_W0_EDIT0 (GUI_ID_USER + 3)

//

// Dialog resource

//

static const GUI_WIDGET_CREATE_INFO _aDialogCreate[] =

{

{ FRAMEWIN_CreateIndirect, “Osciloscope” , ID_W0 , 0, 0, 240, 320, 0 },

{ GRAPH_CreateIndirect , 0 , ID_W0_GRAPH0 , 5, 5, 225, 230 },

{ EDIT_CreateIndirect , 0 , ID_W0_EDIT0 , 178, 15, 40, 20 },

};
责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • lcd
    lcd
    +关注

    关注

    36

    文章

    4630

    浏览量

    177944
  • adc
    adc
    +关注

    关注

    100

    文章

    7946

    浏览量

    556872
  • Discovery
    +关注

    关注

    0

    文章

    14

    浏览量

    9183
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    SE050与F28388D一起使用,无法在它们之间实现通信,怎么解决?

    我正在尝试 SE050 与我的 TI F28388D一起使用,但我无法在它们之间实现通信。 我直在尝试手动完成,但使用 t1oi2c 和所有结构,我无法从 SE050 收到可读的答案。
    发表于 03-30 07:44

    如何使用 Python I2C LCD 与 VIsionFive 一起使用?

    我刚刚发布了篇关于 I2C LCD 与 VisionFive 一起使用的新文章。你可以检查下。 注意:这是基于 libgpiod 库,
    发表于 03-30 06:52

    如何将 VisionFive 2 与业余无线电一起使用?

    VisionFive 2 与业余无线电一起使用
    发表于 03-25 07:01

    为什么不能将 USB 磁盘与 exFat 一起使用?

    不能将 USB 磁盘与 exFat 一起使用
    发表于 03-04 06:27

    RA MCU众测宝典 | ADC/DAC之【RA2L1】DAC电压输出及ADC电压采集实验

    “RAMCU众测宝典”ADC/DAC通信专题上线啦!咱们接下来要解锁嵌入式开发中“连接模拟与数字世界”的关键技能——ADC/DAC专题。这次,瑞萨嵌入式小百科和大家一起聚焦【瑞萨RA
    的头像 发表于 01-20 18:43 5788次阅读
    RA MCU众测宝典 | <b class='flag-5'>ADC</b>/DAC之【RA2L1】DAC电压输出及<b class='flag-5'>ADC</b>电压采集实验

    N9H20如何将 SPI 闪存与非作系统 BSP 一起使用?

    N9H20如何将 SPI 闪存与非作系统 BSP 一起使用?
    发表于 09-01 08:27

    N9H20如何将非作系统 NVTFAT 与 SPI 闪存一起使用?

    N9H20如何将非作系统 NVTFAT 与 SPI 闪存一起使用?
    发表于 09-01 06:38

    光纤能与电线一起走吗

    光纤与电线在特定条件下可以一起布线,但需严格遵守安全规范和物理隔离要求,以下是详细分析: 、光纤与电线的物理特性差异 光纤 传输介质:以光信号传输数据,不导电,因此不受电磁干扰(EMI
    的头像 发表于 07-14 10:40 9736次阅读

    是否可以客户端控件与CYW920706WCDEVAL一起使用?

    是否可以客户端控件与CYW920706WCDEVAL一起使用? 我想用它来发现蓝牙 BR/EDR,然后将其与其他设备配对。 有客户端控制的下载链接或文档吗? 另外,你有 AIROC Connect 蓝牙应用程序的文档吗?
    发表于 07-04 07:50

    无法Jlink调试器与CYBT263065EVAL COOLDIM_PRG_BOARD连接在一起怎么解决?

    我无法 Jlink 调试器与 CYBT263065EVAL COOLDIM_PRG_BOARD连接在一起
    发表于 07-03 06:24

    如何将I2S与音频源一起使用?

    ,但 I2S 选项变灰。 我可以通过选择 .wav 来播放其他音频 定义。 如何将 I2S 与音频源一起使用?
    发表于 06-30 07:36

    拥抱开源!一起来做FPGA开发啦!

    ,发起“拥抱开源——一起来做FPGA开发” 项目!无论你是FPGA领域的资深开发者,渴望探索国产芯片的无限可能;还是初入茅庐的技术小白,想要在实践中学习成长;亦或是对硬件开发充满热情的爱好者,希望亲手
    发表于 06-06 14:05

    是否建议 CYBT-213043 模块与 CYW20835-PB1KML1GGF 一起使用?

    我有带有 BT LE 的参考 BT 设计。 我想添加 MESH 网络。 有没有可以同时提供 BT LE 和 BT MESH 功能的英飞凌 SoC? 如果没有,您是否建议 CYBT-213043 模块与 CYW20835-P
    发表于 06-05 08:10

    技术分享 | 迅为RK3568开发如何将 Linux 板卡虚拟成U盘

    技术分享 | 迅为RK3568开发如何将 Linux 板卡虚拟成U盘
    的头像 发表于 06-04 10:57 1329次阅读
    技术分享 | 迅为RK3568开发<b class='flag-5'>板</b><b class='flag-5'>如何将</b> Linux 板卡虚拟成U盘

    如何将FX3与WSL(Linux 的 Windows 子系统)一起使用?

    如何将 FX3 与 WSL(Linux 的 Windows 子系统)一起使用? 我在 /dev/ 中找不到任何设备 我有许多项目在 Windows 上使用VISUAL STUDIO项目进行操作,因此请验证该设备是否在 Windows 上运行。
    发表于 05-06 07:11