请选择 进入手机版 | 继续访问电脑版

迪文科技论坛

 找回密码
 立即注册
搜索
查看: 4165|回复: 13

【分享】T5L 串口2_串口4 8283协议C51程序全双工数据实时处理

[复制链接]

15

主题

111

回帖

1664

积分

金牌会员

Rank: 6Rank: 6

积分
1664
发表于 2022-3-25 09:58:02 | 显示全部楼层 |阅读模式
本帖最后由 cuijia 于 2023-6-5 09:55 编辑

1.T5L_OS_V3为串口2串口4的8283协议版本源码
2.T5L_OS_V3_CRC为串口2的8283协议加校验版本
3.取消定时器处理数据逻辑,数据实时处理,高速响应,TTL以及232全双工处理机制,最高3m波特率,能稳定传输视频流数据。



V6增加功能

1.增加 数学运算单元(MDU)。 20220415
  
2.增加数据改变自动保存框架。 在数组中配置好dgus地址就可以实现数据自动存flash。在save_data_dgus.c中设置


      u16  xdata  Power_Down_Save_Address[]={0x6000,0x6001,0x10DA,0x10DA,0x10DA,0x10DA,0x10DA,0x10DA,0x10DA,0x10DA,0x10D6,0x10D7,0x10D8,0x10D9,
                                       0x10DA,0x10DB,0x10DC,0x10DD,0x10DE};//掉电保存地址
     u16  xdata  Power_Down_Save_Data[]={0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};//第一次上电数据初始化
    #define            SAVE_NUMBER      2   //存储数据的个数


3.增加rtc驱动选择,sd2058以及rx8130

V7增加功能
串口下载c代码












本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

1

主题

3

回帖

62

积分

注册会员

Rank: 2

积分
62
发表于 2022-3-25 21:05:55 | 显示全部楼层
uart.c第238行,SCON2T|=0x1 ; 这句好像是多余的,我试了一下,没有这句,中断10也会被触发。我的理解是,SCON2T.BIT0是代码写入发送动作后,由内核将该bit置位,然后可以在中断10中清除该标志位。
回复

使用道具 举报

15

主题

111

回帖

1664

积分

金牌会员

Rank: 6Rank: 6

积分
1664
 楼主| 发表于 2022-3-29 11:55:25 | 显示全部楼层
hh219_4 发表于 2022-3-25 21:05
uart.c第238行,SCON2T|=0x1 ; 这句好像是多余的,我试了一下,没有这句,中断10也会被触发。我的理解是,S ...

这个不多余啊,TI传送结束标志置1,如果设置了ES=1(串口中断是允许的),就进入串口中断。
回复

使用道具 举报

1

主题

14

回帖

1016

积分

金牌会员

Rank: 6Rank: 6

积分
1016
发表于 2022-6-16 11:27:49 | 显示全部楼层
Uart4.Tx_Read %= Uart4_Tx_Lenth;
Uart4.Rx_Write %= Uart4_Rx_Lenth;
程序中 这两句实现什么功能 ?没看明白
回复

使用道具 举报

15

主题

111

回帖

1664

积分

金牌会员

Rank: 6Rank: 6

积分
1664
 楼主| 发表于 2022-6-17 09:21:33 | 显示全部楼层
mmlyy2001 发表于 2022-6-16 11:27
Uart4.Tx_Read %= Uart4_Tx_Lenth;
Uart4.Rx_Write %= Uart4_Rx_Lenth;
程序中 这两句实现什么功能 ?没看 ...

定义的数组长度只有这么长,数据满了后就又从0开始写入数据。
回复

使用道具 举报

40

主题

71

回帖

443

积分

中级会员

Rank: 3Rank: 3

积分
443
发表于 2022-6-28 16:11:58 | 显示全部楼层
while(Uart2.Rx_Busy || (Uart2.Rx_Write - Uart2.Rx_Read + Uart2_Rx_Lenth) % Uart2_Rx_Lenth)  这一句Uart2.Rx_Busy表示接受满了buff没有处理,这一句 (Uart2.Rx_Write - Uart2.Rx_Read + Uart2_Rx_Lenth) % Uart2_Rx_Lenth) 请问具体含义是什么?谢谢
回复

使用道具 举报

15

主题

111

回帖

1664

积分

金牌会员

Rank: 6Rank: 6

积分
1664
 楼主| 发表于 2022-6-29 08:56:25 | 显示全部楼层
GLQ 发表于 2022-6-28 16:11
while(Uart2.Rx_Busy || (Uart2.Rx_Write - Uart2.Rx_Read + Uart2_Rx_Lenth) % Uart2_Rx_Lenth)  这一句Ua ...

只要写指针和读指针不相等就说明队列中有数据,就需要处理。
回复

使用道具 举报

31

主题

99

回帖

2923

积分

金牌会员

Rank: 6Rank: 6

积分
2923
发表于 2022-7-26 10:01:05 | 显示全部楼层
串口4测试可以么,我用串口2和串口4读版本号,串口2有返回,串口4没有反应呢,屏是DMG80480C043_01WTC,串口4是单独引出通过USB转TTL接电脑的,是哪里还需要设置么?
回复

使用道具 举报

0

主题

339

回帖

6831

积分

论坛元老

Rank: 8Rank: 8

积分
6831
发表于 2022-7-26 10:11:15 | 显示全部楼层
本帖最后由 Serena 于 2022-7-26 10:21 编辑
下载资料公用号 发表于 2022-7-26 10:01
串口4测试可以么,我用串口2和串口4读版本号,串口2有返回,串口4没有反应呢,屏是DMG80480C043_01WTC,串 ...

您好,串口4是扩展串口,需要解析后才可以使用,可以下载楼主上传的附件(T5L_OS_V3)到屏里即可使用,或者下载如下链接T5L串口4解析文件:
【os范例】T5/T5L-UART4_配置及8283指令+0x0F00系统变量触摸上传
http://inforum.dwin.com.cn:20080 ... d=947&fromuid=14580
(出处: 迪文科技论坛)
回复

使用道具 举报

31

主题

99

回帖

2923

积分

金牌会员

Rank: 6Rank: 6

积分
2923
发表于 2022-7-26 10:35:09 | 显示全部楼层
Serena 发表于 2022-7-26 10:11
您好,串口4是扩展串口,需要解析后才可以使用,可以下载楼主上传的附件(T5L_OS_V3)到屏里即可使用,或 ...

谢谢,是的,我是下载了楼主的文件,就是两个串口都发读版本号,串口4没有返回
回复

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|迪文科技论坛 ( 京ICP备05033781号-1 )

GMT+8, 2024-3-29 13:33 , Processed in 0.124199 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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