范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

学习STM32编程USART控制流水灯

  关键代码usart.c:#ifdef __GNUC__   /* With GCC/RAISONANCE, small printf (option LD Linker->Libraries->Small printf      set to "Yes") calls __io_putchar() */   #define PUTCHAR_PROTOTYPE int __io_putchar(int ch) #else   #define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f) #endif // __GNUC__   PUTCHAR_PROTOTYPE {   /* Place your implementation of fputc here */   /* e.g. write a character to the USART */   USART_SendData(USART1, (uint8_t) ch);    /* Loop until the end of transmission */   while (USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET)   {}    return ch; }      #if USART1_RX_EN uint8_t USART1_RX_Buffer[USART_RX_MAX]={0}; uint8_t USART1_RX_Index=0; uint8_t USART1_RX_OverFlag=0; #endif  void USART1_Init(uint32_t baudRate) {     GPIO_InitTypeDef GPIO_InitStructure;     USART_InitTypeDef USART_InitStructure;     NVIC_InitTypeDef NVIC_InitStructure;          RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA,ENABLE);     RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);          GPIO_PinAFConfig(GPIOA,GPIO_PinSource9,GPIO_AF_USART1);     GPIO_PinAFConfig(GPIOA,GPIO_PinSource10,GPIO_AF_USART1);          GPIO_InitStructure.GPIO_Pin=GPIO_Pin_9 | GPIO_Pin_10; 	GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF; 	GPIO_InitStructure.GPIO_OType=GPIO_OType_PP; 	GPIO_InitStructure.GPIO_Speed=GPIO_Fast_Speed; 	GPIO_InitStructure.GPIO_PuPd=GPIO_PuPd_UP; 	GPIO_Init(GPIOF,&GPIO_InitStructure);          USART_InitStructure.USART_BaudRate=baudRate;     USART_InitStructure.USART_WordLength=USART_WordLength_8b;     USART_InitStructure.USART_StopBits=USART_StopBits_1;     USART_InitStructure.USART_Parity=USART_Parity_No;     USART_InitStructure.USART_HardwareFlowControl=USART_HardwareFlowControl_None;     USART_InitStructure.USART_Mode=USART_Mode_Rx | USART_Mode_Tx;     USART_Init(USART1,&USART_InitStructure);          USART_Cmd(USART1,ENABLE);      #if USART1_RX_EN     USART_ITConfig(USART1,USART_IT_RXNE,ENABLE);          NVIC_InitStructure.NVIC_IRQChannel=USART1_IRQn;     NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=1;     NVIC_InitStructure.NVIC_IRQChannelSubPriority=3;     NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE;     NVIC_Init(&NVIC_InitStructure); #endif      }  void USART1_IRQHandler(void) {     uint8_t Res;     if(USART_GetITStatus(USART1,USART_IT_RXNE)!=RESET)     {         //Res=USART1->DR;         Res=USART_ReceiveData(USART1);         if(USART1_RX_Index>=USART_RX_MAX)         {             USART1_RX_Index=0;         }         if(Res!="#")         {             USART1_RX_Buffer[USART1_RX_Index++]=Res;         }         else if(Res=="#")         {             USART1_RX_Buffer[USART1_RX_Index++]=Res;             USART1_RX_OverFlag=1;         }     }     USART_ClearFlag(USART1,USART_FLAG_RXNE); }
  main.c:LED_WorkModeTypeDef myLEDWorkMode=LED_MODE1;  const char stringMode1[8]="mode_1#"; const char stringMode2[8]="mode_2#"; const char *stringMode3="mode_3#";  int main(void) {     delay_init(168);     LED_Init();     USART1_Init(115200);     printf("System Started!r ");  	 	while(1) 	{		         if(USART1_RX_OverFlag==1)         {             if(strstr((const char *)USART1_RX_Buffer,stringMode1)!=NULL)             {                 printf("I"m in mode_1!r ");                 myLEDWorkMode=LED_MODE1;             }             else if(strstr((const char *)USART1_RX_Buffer,stringMode2)!=NULL)             {                 printf("I"m in mode_2!r ");                 myLEDWorkMode=LED_MODE2;             }             else if(strstr((const char *)USART1_RX_Buffer,stringMode3)!=NULL)             {                 printf("I"m in mode_3!r ");                 myLEDWorkMode=LED_MODE3;             }                          USART1_RX_Index=0;             USART1_RX_OverFlag=0;             memset(USART1_RX_Buffer,0,USART_RX_MAX);         }         if(myLEDWorkMode==LED_MODE1)         {             LED_Mode1(1000);         }         else if(myLEDWorkMode==LED_MODE2)         {             LED_Mode2();         }         else if(myLEDWorkMode==LED_MODE3)         {             LED_Mode3();         } 	} }

44岁李玉刚身体状况引担忧,节目后台坐轮椅,走路迈不开步要搀扶饿了吗?戳右边关注我们,每天给您送上最新出炉的娱乐硬核大餐!10月14日,有网友晒出了一则歌手李玉刚的近况视频,只见他一改往日的精神派头,面带倦意地坐在轮椅上,身体状况引起了粉丝们前央视主持人成蕾,长期向境外泄露国家秘密,其结局究竟如何?很难想象,一位来自央视的美女主持人,精致皮囊下竟然还隐藏着另外一重身份,那就是间谍。听起来好像是谍战大戏,令人惊心动魄,但是如果你知道了她的所作所为对中国带来的伤害后,应该也会感到12万多喜提长安锐程PLUS,开了半个月,车主憋了一肚子话想说以往,汽车只是代步工具,但随着科技发展,汽车被赋予更多价值,比如对很多年轻朋友来说更是一位出行伙伴。可想要这位伙伴有着不错服务水平,还是得需要花费较高代价,10万左右买台家轿车肯定低调的潮汕富豪从贫民窟走出的亚洲漆王,95岁身家930亿元正所谓有潮水的地方,就有潮汕人,有钱赚的地方,就有潮商。潮汕商人作为一个群体出现可追溯至明代,历经数百年的风雨洗礼而不衰。特别是近代以来,影响力日益扩大,涌现出李嘉诚黄光裕马化腾等粤电力前三季度发电量同比增加2。76粤电力前三季度发电量同比增加2。76财联社10月14日电,粤电力A公告,前三季度,公司累计完成合并报表口径发电量858。96亿千瓦时,同比增加2。76其中煤电完成706。72亿千瓦孔凡萍到环翠区调研经济发展和安全防范工作10月13日,市委副书记市长孔凡萍到环翠区调研经济发展疫情防控安全防范等工作,强调要全力以赴稳住经济发展基本盘,守牢各领域安全等一排底线,努力实现两统筹双胜利。威海海鑫新材料有限公5G基站居然也打盹?是在工作摸鱼吗白天上班,晚上睡觉,对于我们来说再正常不过了。但5G基站休眠是个什么情况?它一休眠,岂不是没信号了?别担心!基站休眠并不是把基站关闭,而是一种新的节能方式,不会影响手机信号。5G基喜欢打游戏的可以看看这个工作GameTestEngineer游戏测试具体要做哪些工作?一起来看看吧!游戏皮肤根据各种策划或需求文档,编写包含测试目标测试环境测试步骤与预期结果等的规划,还有技术类的,穿模颜色过告别周鹏后!广东新赛季前锋搭配二飞当大哥,两名小将挑大梁116102,广东男篮新赛季的首胜来得非常不容易,与同曦男篮厮杀四节才分出胜负,相对于比赛过程,正如杜锋赛后新闻发布会点评那样,第一场比赛,大家感觉还是一般,上半场很多机会都出来了弟弟半夜摸我胸,爸妈却说他还是个孩子不少父母眼中,孩子的世界从不存在性。兄弟姊妹同睡一张床,洗澡共用浴缸,是一部分多子女家庭的日常。他们的父母认为,手足之间无需刻意避讳,孩子照样能健康快乐地成长。可事实真的是这样吗?中国电建不再涉足房地产?澄清公告来了!为何央企纷纷退出地产界就在9月26日,一条关于中国电建不再从事房地产开发业务不构成与控股股东同业竞争的消息传出,不禁让人感到有些震惊,毕竟中国电建作为大型央企,涉足房地产业务已不是一年两年,这些年来其房
因丑闻被迫退圈,后创潮牌年入千万,陈冠希如今怎么样了?曾经他是放浪形骸的情场浪子,因一场照片风波被迫无限期退出娱乐圈。如今他是热衷于晒娃的超级奶爸,家人在他的生命中占据着无比重要的地位。都说浪子回头金不换,他却说如果让我回到过去我会改向往的生活第五季重播,李维嘉突然被打码,此前他已消失一年10月1日,有湖南网友在收看湖南广播电视台都市频道(以下简称湖南都市)的时候,发现在频道播出的向往的生活第五季里面,有一位嘉宾被马赛克覆盖了脸部,行业内俗称的打码。向往的生活第五季2022国庆最新电影精彩上新分享一元换命DeadforADollar(2022)6。7导演沃尔特希尔主演克里斯托弗瓦尔兹威廉达福瑞秋布罗斯纳安本杰明布拉特哈米什林克莱特盖布耐特布兰登斯考特J。D。Garfield恭喜啊!一儿一女,终于凑成一个好字!原来一切都有预谋没错说的戚薇李承铉。期初是网友发现戚薇在社交平台发布了一张潮玩娃娃的照片,并配文又一只,疑似官宣已经生娃。接着又有网友爆料,在录某综艺时,李承铉就官宣老婆已经生完二胎。张智霖还无意13年前爆红网络的凤姐,被骂后出走美国,如今过得怎样?2009年10月,在上海国际金融中心的陆家嘴,一位穿着洁白婚纱的女人在地铁站附近派发自己的征婚传单,连续多天足足派发出去一万多份!这份传单上,她这样介绍自己琴棋书画无所不通,智商6朱小伟陈萌大婚超豪华,直升机接亲红毯铺满地,预估花费数百万大衣哥儿子朱小伟结婚了!10月1日上午,有网友晒出了朱小伟与陈萌大婚的视频,其豪华程度震惊无数吃瓜网友,让众人直呼太羡慕。朱小伟陈萌大婚超豪华,直升机接亲红毯铺满地,预估花费数百万杨颖默默关注黄晓明被抓包,疑似想复合,曾被曝同桌聚餐杨颖和黄晓明离婚之后,两个人之间几乎就没有任何交集,就连对接儿子,也是杨颖跟黄晓明的父母对接,从来不跟黄晓明见面,似乎他们在刻意回避,不给彼此留下任何机会。就在大家以为两个人可能已守望先锋2归来需要什么配置针对即将在10月5日以免费形式提供游玩的守望先锋2,守望先锋2归来是由暴雪娱乐开发的第一人称射击游戏作品,该版本将会是守望先锋的续作。暴雪同时还宣布守望先锋2。0版本对战将由守望先新酿老酒一瓶装!梦幻模拟战手游评测作为经典的日式战棋游戏,梦境模仿战系列在老一辈中国玩家心中有着极高的位置。这次在手机平台上的回归,开发商没有选择之前游戏橘子的正式翻译兰格利萨,而是沿用了盗版商的错误翻译梦境模仿战手工星球在家里也能圈养稀有鱼类?钓鱼达人都这样捕获石鲷作者星球社牛小生作为手工星球里的钓鱼达人,小生我已经将所有鱼类钓了个遍。而近期星球收藏家活动推出,需要捕获石鲷才能完成任务,因此不少朋友问小生石鲷去哪钓?下面小生就从准备工具如何前关于碳水化合物的分类关于碳水化合物的种类不同的碳水化合物都具有不同的形式和功效,了解碳水化合物的种类和其对身体的作用至关重要包括哪些类型能快速恢复消耗的肌糖原,哪些类型能在比赛中维持血糖水平(这对保持