2173|1

1万

帖子

16

TA的资源

版主

楼主
 

【ESK32-360测评】五,跑一下真实串口例程 [复制链接]

  本帖最后由 ddllxxrr 于 2020-8-16 09:28 编辑

这次实际操作给我累个不轻,原因在串口,和泰搞的是同台式机接口的串口。而我为了跑这个例程,把我的台式抽了出来,找了半天也没有找到串口,有一个是显卡的口,应是25针地。

娘地,这也难不倒我,我的笔记本是D630地,有一个口串口,于是乎,我连同笔记本+台式+开发板一起上。可是开发板同笔记本之间都是DB9公头,我于是又找来串口线。

       总算万事具备了,可是我打开笔记本时,确没有串口调试助手,当我想WIFI下时,笔记本确显示有INTEL连接但就是网联不上。我今天大清早起来下个最新的,64位的WIN7.

按装上了总算是好了。

      分析下程序:

主程序:

int main(void)
{
  int input;

  { /* Enable peripheral clock of Rx GPIO                                                                   */
    CKCU_PeripClockConfig_TypeDef CKCUClock = {{0}};
    CKCUClock.Bit.HTCFG_UART_RX_GPIO_CLK = 1;
    CKCU_PeripClockConfig(CKCUClock, ENABLE);
  }

  /* Turn on UxART Rx internal pull up resistor to prevent unknow state                                     */
  GPIO_PullResistorConfig(HTCFG_UART_RX_GPIO_PORT, HTCFG_UART_RX_GPIO_PIN, GPIO_PR_UP);

  RETARGET_Configuration();

  /* Send "Hello World!" string 10 times                                                                    */
  for (input = 0; input < 10; input++)
  {
    printf("Hello World! %d\r\n", (int)input);
  }

  /* Get Rx character and and print out                                                                     */
  while (1)
  {
    printf("Please input key for printf....");
    input = getchar();
    printf("\r\nYour input is %c[0x%x]\r\n\r\n", input, input);
  }
}

   可见就是打印一个字符串,然后打十行,最后是等用户键入字符,并显示字符。

int fputc (int ch, FILE *f)
{
  #if (RETARGET_PORT == RETARGET_ITM)
  if (DEMCR & TRCENA)
  {
    while (ITM_PORT32(0) == 0);
    ITM_PORT8(0) = ch;
  }
  return (ch);
  #else
  #ifdef AUTO_RETURN
  if (ch == '\n')
  {
    SERIAL_PutChar('\r');
  }
  #endif
  return (SERIAL_PutChar(ch));
  #endif
}

可见,printf有作用是因为函数重新定义了,SERIAL_PutChar(ch);

但在此程序上边有一个:

int __backspace(FILE *stream)
{
  return 0;
}

在网上查了一下:

1.18 Re-implementing __backspace() in the C library
The function __backspace() is used by the scanf family of functions, and must be re-implemented if you retarget the stdio arrangements at the fgetc() level.

大体知道了,但我觉得同这个例程没有太大的关系。

以下是运行结果:

最新回复

谢谢分享   详情 回复 发表于 2021-4-9 14:33
点赞 关注
个人签名http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr
 
 

回复
举报

661

帖子

0

TA的资源

纯净的硅(初级)

沙发
 

谢谢分享

 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表