你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【Nucleo板开发日志】+开发板入门程序(Keil_v5)---USART中断模式收发

[复制链接]
Dylan疾风闪电 发布时间:2014-8-24 14:21
 上周拿到申请的Nucleo开发板,今天终于有空上电把玩了。
一直在做基于CM3和CM0的应用,对于CM4还处于探索阶段。
 
为了便于上手,暂时不深入寄存器操作,以固件库为主。
先在官方例程的基础上加入了串口收发的代码,做了一个入门试验。
实现内容:
1,LD2(绿灯)闪烁的同时,通过USART1向外发送数据buf[10];
2,向USART1发送10个数据,可以更新buf[10]的内容。
  测试截图.jpg
图1-1试验结果的截图

  硬件接线图.JPG

图1-2开发板-USB转232小板-PC接线截图

 

下面对修改的代码进行简单的说明。

1)在main()函数中插入测试代码:

1.1在LED2代码前插入Test()函数,用于串口初始化。

  else /* Shield not mounted */
  {   
                Test();//insert code
    LED2_Blink();
  }
 
1.2在LED2_Blink()函数中插入COM1_Send(*pTxBuff, length),实现数据buff的发送。
while(1)
  {
    /* Test on blink speed */
    if(BlinkSpeed == 0)
    {
      STM_EVAL_LEDToggle(LED2);
                        COM1_Send(buff,10);//insert code
      /* Wait for 500ms */      
      Delay(500);      
    }      
    else if(BlinkSpeed == 1)
    {
      STM_EVAL_LEDToggle(LED2);
                        COM1_Send(buff,10);//insert code
      /* Wait for 100ms */
      Delay(100); 
    }
    else if(BlinkSpeed == 2)
    {
      STM_EVAL_LEDToggle(LED2);    
                        COM1_Send(buff,10);//insert code
      /* wait for 50ms */
      Delay(50);  
    }
  }
 
1.3中断处理程序中,通过接收数据来更新buff缓存中的数据。
extern u8 buff[];
u8 cur;
u8 index_us = 0;
void USART1_IRQHandler(void)
{
  u16 srg = USART1->ISR;
  if (srg & 0x20)
  {   
    cur = USART1->RDR;    
    
                buff[index_us] = cur;
                index_us++;
                index_us %= 11;
  }

 
2.试验程序的工程为:~\STM32_Nucleo_FW_V1.2.1\Projects\NUCLEO-F302R8\Demonstration\MDK-ARM\STM32F302_Nucleo_Demo.uvproj
STM32_Nucleo_FW_V1.2.1试验程序.rar (1.36 MB, 下载次数: 159)
收藏 评论7 发布时间:2014-8-24 14:21

举报

7个回答
霹雳之火 回答时间:2014-8-24 19:01:01

RE:【Nucleo板开发日志】+开发板入门程序(Keil_v5)---USART中断模式收发

期待后续更精彩分享
Dylan疾风闪电 回答时间:2014-9-9 17:35:52

回复:【Nucleo板开发日志】+开发板入门程序(Keil_v5)---USART中断模式收发

STM32F042C6T6的EVB板子;
用于CAN、RTC、RS485等应用。
1-1.jpg
1-2.jpg
1-3.jpg
笨熊 回答时间:2014-9-9 18:41:27

回复:【Nucleo板开发日志】+开发板入门程序(Keil_v5)---USART中断模式收发

俺也在学习中,不过俺是自己买的开发板
dyhg 回答时间:2014-11-7 12:06:48
kankan,zenmehuishi
lhwstm32 回答时间:2018-3-12 21:38:48
多谢楼主,很好的学习资料!
cgqlucklinux 回答时间:2018-6-12 11:48:01
顶上去
psposx 回答时间:2019-4-11 09:41:23
谢谢分享!!!!!!!!!!!!!

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版