迪文屏型号 DMT80480T050_06WTC
用stm32f103zet6 最小系统板
想做一个这样的界面,右边是个滑块0-500,滑块每次变化,数据上传给串口。记录一下过程。
总体遇到了两个问题:
1、网上的例程一般是收到一个字节发送一个字节。此例需要收到9个字节再发送。
2、迪文屏.ICO的编号要按照文件大小/256的个数,往后排,否则存储区重叠了就不显示了,这个问题读了说明书才知道,SD卡反复烧录了200多次都不知道为什么,还以为是图片格式不对。。。。。真坑啊,能不能把开发工具做得再贴心一点啊。
1、串口接收N个字节
参考了两个人的
https://blog.csdn.net/android_lover2014/article/details/78220163
和
https://blog.csdn.net/zyxhangiian123456789/article/details/79463162?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522163084969116780271556433%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=163084969116780271556433&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allbaidu_landing_v2~default-1-79463162.first_rank_v2_pc_rank_v29&utm_term=stm32%E4%B8%B2%E5%8F%A3%E6%8E%A5%E5%8F%97%E5%A4%9A%E4%B8%AA%E5%AD%97%E8%8A%82&spm=1018.2226.3001.4187
1.1、要在.c文件全局添加个定长接收字符数组
在这里插入代码片
#define USART_MAX_RECV_LEN 9
uint8_t DEBUG_USART_RX_BUF[USART_MAX_RECV_LEN];
char DEBUG_USART_RX_BUF_char[USART_MAX_RECV_LEN];
uint8_t DEBUG_RxCounter;
uint16_t DEBUG_ReceiveState;
USART_Config2也要修改
。。。
/--------------------------------------------------------/
// 串口中断优先级配置
NVIC_Configuration2();
// 【!!!使能帧接收中断】 USART_ITConfig(DEBUG_USARTx_2, USART_IT_IDLE, ENABLE); // 使能串口接收中断 USART_ITConfig(DEBUG_USARTx_2, USART_IT_RXNE, ENABLE);
/--------------------------------------------------------/
。。。