找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2587|回复: 3
收起左侧

普中LCD1602+部分串口STM32代码(建议大佬给点意见)

[复制链接]
ID:640600 发表于 2020-9-21 21:48 | 显示全部楼层 |阅读模式
这个项目是我随手写的不怎么样  求大佬给点意见 我写的同时有很多的问题 请求更正
如有冒犯请谅解  个人只是学习 没有用于商业用途 也请大家勿要用于商业用途 谢谢
接线图.jpg
单片机源程序如下:
  1. #include "stm32f10x.h"
  2. #include "led.h"
  3. #include "delay.h"
  4. #include "beep.h"
  5. #include "bsp_rccclkconfig.h"
  6. #include "bsp_exti.h"
  7. #include "bsp_systick.h"
  8. #include "usart.h"
  9. #include "bsp_usart.h"
  10. #include "lcd1602.h"        
  11. #include "lx_lcd1602.h"

  12. int main(void)
  13. {
  14.         uint8_t a[10]={1,2,3,4,5,6,7,8,9,10};
  15.         uint16_t ch=0;
  16.     LED_Init();
  17.     delay_init();
  18.     BEEP_Init();
  19.     EXTI_Key_Config();  
  20.         NVIC_USART();
  21.         My_USART1_Init();
  22.         
  23.         USART_Config();
  24. //        HSE_SetSysClk(RCC_PLLMul_9);//初始化时钟
  25.         //通过HSE配置出128M的倍频并通过PA8脚的复用功能输出
  26. //    HSE_SetSysClk(RCC_PLLMul_9);
  27. //        
  28. //        MCO_GPIO_Config();//启动PA8的MCO复用功能
  29.         
  30. //        HSI_SetSysClk(RCC_PLLMul_9); //需要的倍频数2~16之间 4*9=36M
  31. //        MCO_GPIO_Config();                        //启动PA8的MCO复用功能
  32.         
  33. //    while(1)
  34. //    {   
  35. //        LED0_On();      //LED0亮
  36. //        BEEP_On();
  37. //        delay_ms(200);
  38. //        
  39. //        LED0_Off();     //LED0熄
  40. //        BEEP_Off();
  41. //        delay_ms(200);
  42. //        
  43. //        LED1_On();      //LED1亮
  44. //        BEEP_On();
  45. //        delay_ms(200);
  46. //        
  47. //        LED1_Off();     //LED1熄
  48. //        BEEP_Off();
  49. //        delay_ms(200);  
  50. //               
  51. //    }


  52.         LCD1602_GPIO_Init();
  53.         LCD1602_Init();
  54.         lcd1602_dis1();
  55.         
  56. //        LX_LCD1602_GPIO_Init();
  57. //        LX_LCD1602_Init();
  58. //        LX_LCD1602_Display();
  59.         
  60.         
  61.     while(1)
  62.     {
  63. //                LED_G_ON();        
  64. //                SysTick_Dlay_ms(500);
  65. //                LED_G_OFF();
  66. //                SysTick_Dlay_ms(500);
  67. //                USART_Config();
  68. //                SysTick_Dlay_ms(500);
  69.                
  70.                
  71.                 Usart_SendByte( DEBUG_USARTx, '6');
  72.                 SysTick_Dlay_ms(500);
  73.                 Usart_SendHalfWord( DEBUG_USARTx, 0xff69);
  74.                 SysTick_Dlay_ms(500);
  75.                 Usart_SendArray(DEBUG_USARTx, a ,10);
  76.                 SysTick_Dlay_ms(500);
  77.                 Usart_SendStr(DEBUG_USARTx , "欢迎使用我写的USART串口实验程序\r\n");
  78.                 SysTick_Dlay_ms(500);
  79.                 //ch=getchar();//因为使用的接收中断最好用USART_ReceiveData(USART1);来接收
  80.                 printf("欢迎使用我写的USART串口实验程序\r\n");
  81.                
  82.     }
  83.    
  84.    
  85. }
复制代码
全部资料51hei下载地址:
训练LCD1602液晶练习.7z (192.3 KB, 下载次数: 16)

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

ID:490458 发表于 2020-9-22 22:15 | 显示全部楼层
这个有硬件连接的好
回复

使用道具 举报

ID:825005 发表于 2020-9-30 23:49 | 显示全部楼层
买个HW-061模块,将LCD1602扩展成I2C模式,这样更简单.
回复

使用道具 举报

ID:73422 发表于 2020-10-5 15:46 | 显示全部楼层
我也写了一个,效果还不错。
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表