[活动专区] 赛元易码魔盒体验——7.测试拓展板的UART0

[复制链接]
897|7
 楼主| 一路向北lm 发表于 2020-7-15 08:43 | 显示全部楼层 |阅读模式
扩展板uart0使用USB转串口的方式,原理图如下,不好意思,这里的串口位置正好反过来了,SC95F8617的TX0(P2.1)接到CH340的RXD,SC95F8617的RX0(P2.0)接到CH340的TXD。
595225f0e514a5fb37.png
629665f0e515d7b247.png
 楼主| 一路向北lm 发表于 2020-7-15 08:44 | 显示全部楼层
使用魔盒来对UART0进行配置,勾选UART0,主频32M,UART0禁止允许…..具体配置如下:
61395f0e516f0b90c.png
 楼主| 一路向北lm 发表于 2020-7-15 08:45 | 显示全部楼层
使用魔盒生成代码,在初始化代码部分已经添加了UART0的初始化代码,左侧多了一个sc95F8x1_uart0.c文件。
133105f0e519b09dbc.png
 楼主| 一路向北lm 发表于 2020-7-15 08:45 | 显示全部楼层
打开sc95F8x1_uart0.c文件,这里列举了一堆函数供我们使用。
82795f0e51aab7f4c.png
 楼主| 一路向北lm 发表于 2020-7-15 08:45 | 显示全部楼层
好了,我们先来发送数据到电脑试试。编写测试代码如下,使用魔盒配置安上图配置无任何问题,串口可以直接输出。
  1. void delay(int z)
  2. {
  3.   int x,y;
  4.         for(x=z;x>0;x--)
  5.            for(y=110;y>0;y--);
  6. }
  7. void main(void)
  8. {        
  9.     /*<UserCodeStart>*/
  10.     /*<UserCodeEnd>*/
  11.         /*** MCU初始化函数 ***/
  12.         SC_Init();
  13.         while(1)
  14.         {
  15.          UART0_SendData8('A');
  16. delay(5000);
  17.         }
  18. }
472765f0e51d34e228.png

 楼主| 一路向北lm 发表于 2020-7-15 08:46 | 显示全部楼层
本人发现的几个Bug
1.        使用魔盒配置如下方式,禁止接收,使能中断低优先级和高优先级时,串口无输出。
366115f0e51ee346a8.png
 楼主| 一路向北lm 发表于 2020-7-15 08:46 | 显示全部楼层
需要将中断优先级使能关闭即可,在代码里关闭中断优先级使能或者在配置界面关闭。
917885f0e51fe2feab.png
 楼主| 一路向北lm 发表于 2020-7-15 08:47 | 显示全部楼层
2.        使用魔盒配置如下方式,允许接收,打开中断低优先级和高优先级时时,串口无输出,关闭中断优先级使能即可恢复正常,后面的几个模式我没再测试,此处配置UART0存在Bug,希望下一版本的魔盒不在有次现象。

您需要登录后才可以回帖 登录 | 注册

本版积分规则

293

主题

3837

帖子

81

粉丝
快速回复 在线客服 返回列表 返回顶部