OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2767|回复: 7

求助大神关于 STM32与DGUS屏通信问题

[复制链接]

6

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
73
金钱
73
注册时间
2018-11-28
在线时间
13 小时
发表于 2018-12-13 20:04:50 | 显示全部楼层 |阅读模式
1金钱
STM32能给屏传输数据,而屏发出的指令32收不到   用电脑串口调试的时候   能接收到屏发的指令,用电脑或另一个32 通过串口发送同样的指令32也能收到,波特率设置也对,实在是不知从何下手了    请各位大神指点迷津

最佳答案

查看完整内容[请看2#楼]

高组态就横竖不对了。。。找问题
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2018-12-13 20:04:51 | 显示全部楼层
CXY1996 发表于 2018-12-19 18:18
用示波器看了   屏没有与32连接时  示波器有波形   当屏与32连接时   就是高阻态   而且屏与51连接的时候 ...

高组态就横竖不对了。。。找问题
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2018-12-14 02:03:36 | 显示全部楼层
是不是串口电平匹配的问题? 串了电阻?
回复

使用道具 举报

6

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
73
金钱
73
注册时间
2018-11-28
在线时间
13 小时
 楼主| 发表于 2018-12-14 11:01:41 | 显示全部楼层
正点原子 发表于 2018-12-14 02:03
是不是串口电平匹配的问题? 串了电阻?

没串电阻啊    两者直接线连的
回复

使用道具 举报

33

主题

159

帖子

0

精华

高级会员

Rank: 4

积分
527
金钱
527
注册时间
2017-1-21
在线时间
192 小时
发表于 2018-12-14 13:33:12 | 显示全部楼层
void USART3_IRQHandler(void)                        //串口3中断服务程序,用于和触摸屏通讯。
{
    uint8_t Res;
    static uint8_t US_STA = 0;         //用于检测是否已经收到帧头,未收到为0,收到A8为1,收到8A未2。
    static uint8_t buffer_num = 0;
    if(USART_GetITStatus(USART3, USART_IT_RXNE) != RESET)
    {
        Res = USART_ReceiveData(USART3);               //读取接收到的数据
        if(!USART3_RX_STA)
        {
            if(US_STA == 0)
            {
                if(Res == 0xA8) US_STA = 1;         //接收到了0xA8,US_STA=1
            }
            else if(US_STA == 1)
            {
                if(Res == 0x8A)
                {
                    US_STA = 2;                     //接收到了0x8A,US_STA=2
                    buffer_num = 0;
                }
                else US_STA = 0;                    //A8后面不是8A则全部重新接收。
            }
            else if(US_STA == 2)
            {
                USART3_RX_Buffer[buffer_num] = Res;
                if(buffer_num++ == USART3_RX_Buffer[0])
                {
                    buffer_num = 0;
                    USART3_RX_STA = 1;              //当接收数量等于缓存0位置时,则接收完成。
                    US_STA = 0;
                }
            }
        }
    }
}

用这个中断函数收就行了,A8  8A是我迪文屏的2位帧头,根据你自己设置的改一下就好。
另外你说电脑能收到屏的数据,那就是232电平喽。你接单片机有没有转3.3V TTL?
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2018-12-15 02:48:43 | 显示全部楼层
CXY1996 发表于 2018-12-14 11:01
没串电阻啊    两者直接线连的

示波器看看波形
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

6

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
73
金钱
73
注册时间
2018-11-28
在线时间
13 小时
 楼主| 发表于 2018-12-19 18:18:13 | 显示全部楼层

用示波器看了   屏没有与32连接时  示波器有波形   当屏与32连接时   就是高阻态   而且屏与51连接的时候   示波器也是有波形的
回复

使用道具 举报

6

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
73
金钱
73
注册时间
2018-11-28
在线时间
13 小时
 楼主| 发表于 2018-12-19 18:19:14 | 显示全部楼层
oyixi001 发表于 2018-12-14 13:33
void USART3_IRQHandler(void)                        //串口3中断服务程序,用于和触摸屏通讯。
{
     ...

不是232的电平   一直是3.3VTTL电平   
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-22 19:42

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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