本文来源电子发烧友社区,作者:李唐, 帖子地址:https://bbs.elecfans.com/jishu_2238177_1_1.html
在使用CSMStudio创建新项目后,会得到一个称为“HelloWorld”的项目,其作用就是通过串口输出图1所示的信息。
在使用CSMStudio创建新项目后,会得到一个称为“HelloWorld”的项目,其作用就是通过串口输出图1所示的信息。
图1输出结果
但从其生成的程序看是应该形成LED灯闪烁效果的,其程序如下:
那为什么没有看到LED等闪烁效果呢?
通过查看开发板的原理图,则可得到其原因。
图2LED电路
原来所使用的引脚不对,应从PA8、PA10及PA12中选取,将程序改为如下内容后即可获得闪烁效果。
- int main(void)
- {
- CLIC_Init();
- System_Clock_Init();
- GPIO_MODE_Init(GPIOA,PIN8,GPIO_MODE_OUTPUT);
- while(1)
- {
- Delay32M_ms(500);
- GPIO_Toggle(GPIOA,PIN8);
- }
- }
图3选取下载文件
图4完成下载
在完成下载后,即可达到图5所示的所示效果。
图5显示效果
若在此基础上加以修改,则可以获得7色彩灯的循环显示效果。
- int main(void)
- {
- CLIC_Init();
- System_Clock_Init();
- GPIO_MODE_Init(GPIOA,PIN8,GPIO_MODE_OUTPUT);
- GPIO_MODE_Init(GPIOA,PIN10,GPIO_MODE_OUTPUT);
- GPIO_MODE_Init(GPIOA,PIN12,GPIO_MODE_OUTPUT);
- while(1)
- {
- Delay32M_ms(500);
- GPIO_Write(GPIOA,PIN12,GPIO_RESET);
- Delay32M_ms(500);
- GPIO_Write(GPIOA,PIN12,GPIO_SET);
- GPIO_Write(GPIOA,PIN10,GPIO_RESET);
- Delay32M_ms(500);
- GPIO_Write(GPIOA,PIN10,GPIO_SET);
- GPIO_Write(GPIOA,PIN8,GPIO_RESET);
- Delay32M_ms(500);
- GPIO_Write(GPIOA,PIN8,GPIO_SET);
- GPIO_Write(GPIOA,PIN12,GPIO_RESET);
- GPIO_Write(GPIOA,PIN10,GPIO_RESET);
- Delay32M_ms(500);
- GPIO_Write(GPIOA,PIN8,GPIO_RESET);
- GPIO_Write(GPIOA,PIN12,GPIO_RESET);
- GPIO_Write(GPIOA,PIN10,GPIO_SET);
- Delay32M_ms(500);
- GPIO_Write(GPIOA,PIN8,GPIO_RESET);
- GPIO_Write(GPIOA,PIN12,GPIO_SET);
- GPIO_Write(GPIOA,PIN10,GPIO_RESET);
- Delay32M_ms(500);
- GPIO_Write(GPIOA,PIN8,GPIO_RESET);
- GPIO_Write(GPIOA,PIN12,GPIO_RESET);
- GPIO_Write(GPIOA,PIN10,GPIO_RESET);
- Delay32M_ms(500);
- GPIO_Write(GPIOA,PIN8,GPIO_SET);
- GPIO_Write(GPIOA,PIN12,GPIO_SET);
- GPIO_Write(GPIOA,PIN10,GPIO_SET);
- }
- }
控制外挂LED模块的程序如下:
- int main(void)
- {
- CLIC_Init();
- System_Clock_Init();
- GPIO_MODE_Init(GPIOB,PIN1,GPIO_MODE_OUTPUT);
- GPIO_Write(GPIOB,PIN1,GPIO_SET);
- while(1)
- {
- GPIO_Write(GPIOB,PIN1,GPIO_SET);
- Delay32M_ms(500);
- GPIO_Write(GPIOB,PIN1,GPIO_RESET);
- Delay32M_ms(500);
- }
- }
经程序的编译与下载,其显示效果如图6和图7所示。
图6熄灭LED模块
图7点亮LED模块
除了GPIO口的输出功能外,还可以用GPIO口的输入功能来识别按键的状态。
在连接薄膜软按键的情况下,使用下面的程序可实现感应控制的作用。
- int main(void)
- {
- CLIC_Init();
- System_Clock_Init();
- GPIO_MODE_Init(GPIOB,PIN1,GPIO_MODE_OUTPUT);
- GPIO_MODE_Init(GPIOB,PIN2,GPIO_MODE_INPUT);
- GPIO_Write(GPIOB,PIN1,GPIO_SET);
- while(1)
- {
- if(GPIO_Read(GPIOB,PIN2)==0) GPIO_Write(GPIOB,PIN1,GPIO_SET);
- else GPIO_Write(GPIOB,PIN1,GPIO_RESET);
- }
- }
经程序的编译与下载,其显示效果如图8和图9所示。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
南京中科微
+关注
关注
0文章
58浏览量
637 -
CSM32RV20
+关注
关注
0文章
40浏览量
177
发布评论请先 登录
相关推荐
【中科微CSM32RV003绿色开发板免费体验】+ISP下载测试
在收到中科微的CSM32RV003绿色开发板后,首先到官网和技术支持微信群寻找资料。要实现CSM32RV
发表于 10-11 08:58
【中科微CSM32RV003绿色开发板免费体验】2.RISC-V RV32IMAC内核
CSM32RV003绿色开发板免费体验】1.上手
我要感谢南京中科微电子有限公司提供的CSM32RV003绿色
发表于 10-10 00:03
【中科微CSM32RV003绿色开发板免费体验】 开箱和安装工具帖
我申请项目:滑翔伞空中速率计。
我于2023年9月9日下午收到中科微CSM32RV003开发板快递包裹。拿回后立马打开包裹,出现南京
发表于 10-09 23:34
【中科微CSM32RV003绿色开发板免费体验】1.上手
首先,我要感谢南京中科微电子有限公司提供的CSM32RV003绿色开发板和试用机会,这让我有机会深入了解并使用该公司的产品。经过几天的熟悉和
发表于 10-09 23:21
【中科微CSM32RV003绿色开发板免费体验】了解和认识中科微CSM32RV003绿色开发板
℃;● 支持 TSSOP20/QFN20 封装。
中科微CSM32RV003绿色开发板上电,
发表于 09-22 16:56
【中科微CSM32RV003绿色开发板免费体验】中科微CSM32RV003绿色开发板初次使用测试
今天拿到中科微CSM32RV003绿色开发板做一下上电及初次使用的介绍视频及文字介绍,
中科微
发表于 09-22 16:35
【中科微CSM32RV003绿色开发板免费体验】中科微CSM32RV003绿色开发板初体验
收到南京中科微的CSM32RV003绿色开发板,板子做的很小巧,绿色阻焊也很漂亮,板子布局合理,功能也很强大。
发表于 09-22 16:25
【中科微CSM32RV003绿色开发板免费体验】第一帖-开箱体验
本帖最后由 ele2022 于 2023-9-20 16:40 编辑
今天开箱体验南京中科微推出的CSM32RV003
发表于 09-20 13:56
试用南京中科微电子CSM32RV003开发板
非常迅速头一天接收信息,第二天雨中快递送到南京中科微电子有限公司CSM32RV003开发板(TSSOP20)封装的RISC-V处理器芯片。迷
发表于 09-09 19:01
评论