Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
ADC
GPIO
瑞萨_RA6M4
【开发板评测】Renesas RA6M4开发板之ADC、GPIO
发布于 2022-03-15 19:48:04 浏览:841
订阅该版
感谢RT-Thread和Renesas给我这次评测的机会,我测评的部分是ADC和GPIO。 1. 新建开发板工程 ![image.png](https://oss-club.rt-thread.org/uploads/20220315/6ae158988299606a2826d63d90add526.png.webp) 2.在fsp中设置相关参数 在pins中选择ADC0,关闭其他不需要的功能 ![image.png](https://oss-club.rt-thread.org/uploads/20220315/b04c1065fcd92d64395192812105e792.png.webp) 选择通道四即可 ![image.png](https://oss-club.rt-thread.org/uploads/20220315/64f465b53c1fa6d19c5c700d85a3dade.png) 在pins中选中P105并配置为外部中断模式 ![image.png](https://oss-club.rt-thread.org/uploads/20220315/dc41d943a9bdbed52939ca21b05cd600.png.webp) 在stacks中点击New stacks并选择Analog,选择第一个或者第二个都可以,看需求 ![image.png](https://oss-club.rt-thread.org/uploads/20220315/dae69ad92071d94ee0110a4dd75506f4.png.webp) 点击刚才创建的r_adc进行参数配置,选择通道四,因为通道四和开发板上的电位计相连接 ![image.png](https://oss-club.rt-thread.org/uploads/20220315/d5eca88dc4a6d0147f8d724f475d0625.png) 点击generate project content ![image.png](https://oss-club.rt-thread.org/uploads/20220315/b807e894ee345e64ed9fa44020e0ba6e.png.webp) 3.点击RT_Thread Setting配置相关参数 开启ADC ![image.png](https://oss-club.rt-thread.org/uploads/20220315/020af4420306d3ef461fd618d188834e.png) 选择ADC0 ![image.png](https://oss-club.rt-thread.org/uploads/20220315/8c4a7383d0f72c71744168b24e212f07.png) 保存设置 5.硬件模块 使用了LED3,按键,电位计。使LED闪烁,按键用中断触发,使用ADC0的第四通道采集电位器的电压。 ![image.png](https://oss-club.rt-thread.org/uploads/20220315/de5d7860c1a03598c94e32294198089d.png.webp) 6.程序编写 按自己喜欢的方式修改main函数 ![image.png](https://oss-club.rt-thread.org/uploads/20220315/7d7b294e1f5ba35fff3fc560e206d0f1.png) 如下图所示 ![image.png](https://oss-club.rt-thread.org/uploads/20220315/6bb84ec909664463a33dc923712c4c62.png) 新建test_adc.c、test_adc.h、test_gpio.c、test_gpio.h ![image.png](https://oss-club.rt-thread.org/uploads/20220315/399d829cfb8c77c2f946bbf0db57ae3e.png) 编写test_adc.c内容 ``` #include
#include
#define ADC_NAME "adc0" /* ADC 设 备 名 称 */ #define ADC_CHANNEL 4 /* ADC 通 道 */ #define REFER_VOLTAGE 330 /* 参 考 电 压 3.3V,数 据 精 度 乘 以100保 留2位 小 数 */ #define CONVERT_BITS (1 << 12) /* 转 换 位 数 为12位 */ static int adc_sample(int argc, char *argv[]) { rt_adc_device_t adc_dev; rt_uint32_t value, vol; rt_err_t ret = RT_EOK; /* 查 找 设 备 */ adc_dev = (rt_adc_device_t)rt_device_find(ADC_NAME); if (adc_dev == RT_NULL) { rt_kprintf("adc sample run failed! can't find %s device!\n", ADC_NAME); return RT_ERROR; } /* 使 能 设 备 */ ret = rt_adc_enable(adc_dev, ADC_CHANNEL); /* 读 取 采 样 值 */ value = rt_adc_read(adc_dev, ADC_CHANNEL); rt_kprintf("the value is :%d \n", value); /* 转 换 为 对 应 电 压 值 */ vol = value * REFER_VOLTAGE / CONVERT_BITS; rt_kprintf("the voltage is :%d.%02d \n", vol / 100, vol % 100); /* 关 闭 通 道 */ ret = rt_adc_disable(adc_dev, ADC_CHANNEL); return ret; } /* 导 出 到 msh 命 令 列 表 中 */ MSH_CMD_EXPORT(adc_sample, adc voltage convert sample); ``` 编写test_gpio.c内容 ``` #include
#include "hal_data.h" #include
#define USER_INPUT "P105" void gpio_test(void *args) { rt_kprintf("key pushed \r\n"); } void gpio_sample(void) { rt_uint32_t pin = rt_pin_get(USER_INPUT); rt_kprintf(" pin number : 0x%04X \r\n", pin); rt_err_t err = rt_pin_attach_irq(pin, PIN_IRQ_MODE_LOW_LEVEL, gpio_test, RT_NULL); if(RT_EOK != err) { rt_kprintf(" attach irq failed. \r\n"); } err = rt_pin_irq_enable(pin, PIN_IRQ_ENABLE); if(RT_EOK != err) { rt_kprintf("enable irq failed. \r\n"); } } MSH_CMD_EXPORT(gpio_sample, gpio sample); ``` 7.测试 在终端中输入adc_sample ![image.png](https://oss-club.rt-thread.org/uploads/20220315/39276d339f650f990a13512f1b0ab019.png) 万用表测试如下 ![1647331965898.jpg](https://oss-club.rt-thread.org/uploads/20220315/d087e6c94e7858c0381fc565a4cbf7dc.jpg.webp) 8.视频 [QQ视频20220315183115.mp4](https://oss-club.rt-thread.org/uploads/20220315/611275c130d907353e8eaadd1d564650.mp4) 9.代码 https://github.com/18785275440/RA6M4.git 10.心得体会 才拿到开发板快递时感觉重重的,心想里面除了开发板还装了啥呢,拿到寝室迫不及待的打开,快递没有一点破损,包装很到位,里面夹了两本入门手册。一本是评估板快速入门,还有一本是RA MCU的基础知识。感觉很贴心,接下来就是这款开发板,拿着很大气,元器件布局很有美感。开发板的资源也很丰富,新建工程的时候,观察里面的文件命名结构,刚开始有点蒙,感觉一个ADC接口进行了多次封装,这样不是很不利于开发者开发嘛,但是后面读了入门手册后改变了我的想法,这样做是为了进行硬件分离,开发者不用关心底层结构。还有就是FSP很好用,可能刚开始不熟悉里面的结构,但是通过网上查找资料、手册熟悉后就觉得很方便,减少开发时间。接下来就是RT_Thread操作系统,很好用。刚开始学操作系统就是拿这个入门,学习的时候容易看懂。驱动比较完善。在我不怎么了解这款开发板的情况下完成任务。并不是我的能力有多大,而是RTT写得太好。 希望在以后RTT与瑞萨越做越强。
1
条评论
默认排序
按发布时间排序
登录
注册新账号
关于作者
UWPU_1321
这家伙很懒,什么也没写!
文章
6
回答
1
被采纳
0
关注TA
发私信
相关文章
1
请大神帮忙看下风格 还是哪里有问题 照着串口驱动写的ADC驱动
2
ADC config
3
rt_thread_delay()和ADC采样之间的冲突
4
请教在官方BSP中的STM32F40X程序中加入ADC,串口没输出。
5
给RT-Thread添加ADC驱动框架
6
求助:ADC采样被干扰
7
【内核和外设学习营】十里 ADC光敏电阻电压采集实验
8
<内核学习营>+坦然+探索者stm32f407板子的ADC测试光传感器实验
9
【内核学习营】+青春+ADC读取光敏传感器实验
10
《内核学习营》+水一方+项目中应用的ADC实现电压采集
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
机器人操作系统 (ROS2) 和 RT-Thread 通信
4
五分钟玩转RT-Thread新社区
5
国产MCU移植系列教程汇总,欢迎查看!
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
热门标签
RT-Thread Studio
串口
LWIP
Env
SPI
Bootloader
AT
ART-Pi
CAN总线
Hardfault
FinSH
USB
文件系统
DMA
RT-Thread
SCons
线程
RT-Thread Nano
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
ota在线升级
WIZnet_W5500
I2C_IIC
UART
flash
cubemx
packages_软件包
freemodbus
潘多拉开发板_Pandora
PWM
定时器
ADC
BSP
中断
keil_MDK
编译报错
socket
MicroPython
GD32
msh
Debug
ulog
SDIO总线
SFUD
rt_mq_消息队列_msg_queue
C++_cpp
本月问答贡献
xiaorui
6
个答案
3
次被采纳
sakumisu
4
个答案
3
次被采纳
三世执戟
31
个答案
1
次被采纳
梦笑真美
17
个答案
1
次被采纳
踩姑娘的小蘑菇
14
个答案
1
次被采纳
本月文章贡献
Z_Y
2
篇文章
5
次点赞
2345vor
2
篇文章
1
次点赞
比特饼干
1
篇文章
6
次点赞
Lu_盼盼
1
篇文章
3
次点赞
猪的行独
1
篇文章
3
次点赞
回到
顶部
发布
问题
投诉
建议
回到
底部