搜索
bottom↓
楼主: linquan315

STM32串口驱动(拼音检索测试通过)(环形队列+内存动态分配+DMA)(申请加酷,让更多的人

  [复制链接]

出0入0汤圆

发表于 2013-9-25 19:04:49 | 显示全部楼层
不错,支持一下

出0入0汤圆

发表于 2013-9-25 20:11:32 | 显示全部楼层
说的真好,感谢这么奉献的人

出0入0汤圆

发表于 2013-9-26 21:56:42 | 显示全部楼层
不错,长知识了,就用它;额

出0入0汤圆

发表于 2013-9-27 06:09:22 来自手机 | 显示全部楼层
很好必须顶

出0入0汤圆

发表于 2013-9-27 08:40:24 | 显示全部楼层
谢谢分享!

出0入0汤圆

发表于 2013-9-27 10:41:01 | 显示全部楼层
STM32串口驱动(拼音检索测试通过)(环形队列+内存动态分配+DMA)

出0入0汤圆

发表于 2013-9-27 16:47:06 | 显示全部楼层
mark,支持

出0入0汤圆

发表于 2013-9-27 17:02:02 | 显示全部楼层
学习了,

出0入0汤圆

发表于 2013-10-5 21:41:23 | 显示全部楼层
好贴,谢谢分享~

出0入0汤圆

发表于 2013-10-5 22:03:22 | 显示全部楼层
谢谢分享,好的串口驱动啊

出0入0汤圆

发表于 2013-10-13 15:25:24 | 显示全部楼层
谢谢分享~

出0入0汤圆

发表于 2013-10-18 08:24:10 | 显示全部楼层
学习。。。。。。

出0入0汤圆

发表于 2013-10-19 18:21:49 | 显示全部楼层
学习了,Mark一下。

出0入0汤圆

发表于 2013-10-19 19:40:40 | 显示全部楼层
uart mark学习了

出0入0汤圆

发表于 2013-10-19 23:06:13 | 显示全部楼层
有没UCos和 串口中断的例子

出0入0汤圆

发表于 2013-10-20 09:53:48 | 显示全部楼层
不错的东西呀,空了 学习一下

出0入0汤圆

发表于 2013-10-27 17:56:07 | 显示全部楼层
很好

出0入10汤圆

发表于 2013-10-31 14:49:15 | 显示全部楼层
标记下,写得很详细!

出0入0汤圆

发表于 2013-11-21 22:24:39 | 显示全部楼层
多谢楼主!好贴

出0入0汤圆

发表于 2013-11-22 00:56:44 来自手机 | 显示全部楼层
mark了,明天看看

出0入0汤圆

发表于 2013-11-22 01:21:56 | 显示全部楼层
好贴,消化一下

出0入0汤圆

发表于 2013-11-22 11:48:21 | 显示全部楼层
学习,真的不错的资料!LZ辛苦~

出0入0汤圆

发表于 2013-11-22 16:02:35 | 显示全部楼层
学习一下!

出0入9汤圆

发表于 2013-11-22 22:18:03 来自手机 | 显示全部楼层
好详细啊。学习了。

出0入0汤圆

发表于 2013-11-26 11:17:49 | 显示全部楼层
谢谢楼主分享,顶起……

出0入0汤圆

发表于 2013-11-26 15:54:01 | 显示全部楼层
谢谢楼主分享!!

出0入0汤圆

发表于 2013-11-26 16:32:25 | 显示全部楼层
必须要顶起来啊

出0入16汤圆

发表于 2013-11-26 16:38:47 | 显示全部楼层
保存,看能不能以后用上!

出0入0汤圆

发表于 2013-11-26 17:40:58 | 显示全部楼层
收藏了!!!!!!

出0入0汤圆

发表于 2013-11-26 18:33:15 | 显示全部楼层
这个太给力了,支持!

出0入0汤圆

发表于 2013-11-26 19:24:04 | 显示全部楼层
学习了,谢谢

出0入0汤圆

发表于 2013-12-3 13:01:15 | 显示全部楼层
标记,串口队列+拼音检索。

出0入0汤圆

发表于 2013-12-3 13:14:33 | 显示全部楼层
好东西!学习了!

出0入0汤圆

发表于 2014-1-24 14:50:46 | 显示全部楼层
高人啊。。顶起来

出0入0汤圆

发表于 2014-1-24 16:08:20 | 显示全部楼层
很详细,学习了

出0入0汤圆

发表于 2014-1-24 16:25:11 | 显示全部楼层
好东西,学习一下

出0入0汤圆

发表于 2014-1-24 16:32:51 | 显示全部楼层
学习了

出0入0汤圆

发表于 2014-1-24 17:41:43 | 显示全部楼层
是个牛人,关于队列以及环形队列,我还是比较熟悉的,楼主的讲解也是非常清楚的

出0入0汤圆

发表于 2014-1-24 18:36:22 | 显示全部楼层
真是好东西!谢谢

出0入0汤圆

发表于 2014-1-25 07:11:52 | 显示全部楼层
好贴要顶。。。。。。。。。   

出0入0汤圆

发表于 2014-1-25 10:32:21 | 显示全部楼层
很不错啊。最近也在研究这个

出0入0汤圆

发表于 2014-2-19 17:21:43 | 显示全部楼层
LZ很牛,鉴定完毕!

出160入67汤圆

发表于 2014-2-19 17:41:05 | 显示全部楼层
顶一记,学习,谢谢!

出0入0汤圆

发表于 2014-2-19 18:57:33 | 显示全部楼层
不错                  

出0入0汤圆

发表于 2014-2-24 10:46:40 | 显示全部楼层
这个需要仔细的消化,写的不错,关键是理解编程的思想,以后活学活用!

出0入0汤圆

发表于 2014-3-5 18:38:38 | 显示全部楼层

请问楼主这图片是用什么工具做的

出0入0汤圆

发表于 2014-3-5 19:11:41 | 显示全部楼层
谢谢楼主分享

出0入0汤圆

发表于 2014-3-5 23:51:49 | 显示全部楼层
谢谢分享~~顶一下!

出0入0汤圆

发表于 2014-3-11 18:45:26 | 显示全部楼层
楼主的工程移值后大体上没问题但是在

USART1DMAConfig(USART1SendTCB[USART1SendQBoxTail].Index,USART1SendTCB[USART1SendQBoxTail].Num);
调用函数void USART1DMAConfig(u8 TxBuffer1,u16 num)
1: iar编译报错

2:如果将调用函数改成USART1DMAConfig(*(USART1SendTCB[USART1SendQBoxTail].Index),USART1SendTCB[USART1SendQBoxTail].Num); 那么在DMA设置时会发现搬移地址赋值时是错误的

   我将函数改成void USART1DMAConfig(u8 *TxBuffer1,u16 num)后,目前能运行没遇到大的问题,还在测试中。

出0入0汤圆

发表于 2014-3-11 18:49:58 | 显示全部楼层
好贴留名!

出0入0汤圆

发表于 2014-3-20 09:42:50 | 显示全部楼层
不错 很有技术含量在里面  可以看出来楼主对于串口数据有了相当深入的研究 好贴就要留名  

出0入0汤圆

发表于 2014-3-20 10:45:33 | 显示全部楼层
过来看看

出0入0汤圆

发表于 2014-3-20 11:04:05 | 显示全部楼层
收藏了        

出0入0汤圆

发表于 2014-3-20 16:17:47 | 显示全部楼层
mark......

出0入0汤圆

发表于 2014-3-22 11:44:01 | 显示全部楼层
不错,研究一下

出0入0汤圆

发表于 2014-3-22 12:09:33 | 显示全部楼层
不错的帖子 有空看看呢

出0入0汤圆

发表于 2014-3-22 12:52:08 | 显示全部楼层
MARK A .. ..

出0入0汤圆

发表于 2014-3-23 11:07:21 | 显示全部楼层
很不错啊,后面学习一下,顶!

出0入0汤圆

发表于 2014-4-24 22:45:09 | 显示全部楼层
顶楼主,谢谢分享

出0入0汤圆

发表于 2014-4-25 12:58:48 | 显示全部楼层
酷,好资料。。。

出0入0汤圆

发表于 2014-4-25 14:25:39 | 显示全部楼层
本帖最后由 roguebear2012 于 2014-4-25 15:12 编辑

2年了  lz头像咋变帅了?

出0入0汤圆

发表于 2014-4-25 16:27:04 | 显示全部楼层
头像是会变的

出0入0汤圆

发表于 2014-4-25 21:53:25 | 显示全部楼层
mark,楼主有心了。

出0入0汤圆

发表于 2014-4-26 05:26:18 | 显示全部楼层
对串口的运用讲解很细致

出0入0汤圆

发表于 2014-4-29 10:52:59 | 显示全部楼层
mark  学习

出0入0汤圆

发表于 2014-4-29 12:10:49 | 显示全部楼层
有空学习一下

出0入0汤圆

发表于 2014-4-29 13:24:04 | 显示全部楼层
好东西,收藏了

出0入0汤圆

发表于 2014-4-29 14:22:14 | 显示全部楼层
再mark下

出0入0汤圆

发表于 2014-5-31 23:49:16 | 显示全部楼层
楼主的代码风格不错,不过还可以进一步整合,USART在ST的芯片上不止是一个,把该模块整合到一起,集合度会更好,只是个参考建议。
楼主的代码借鉴了系统的内存分配思想,清零一块buffer给要赋值的内存区块,类似于PC上的malloc的功能,对我也很有帮助,不过由于我个人水平限制,问一下如果要在ST上直接是是实现malloc的话,要怎么操作呢?我希望能把链表啥的移植到ST上,手头上一个案子需要用到链表处理才比较方便,要不代码会很成懒婆娘的裹脚布,你懂的,呵呵

出0入0汤圆

发表于 2014-6-9 11:05:55 | 显示全部楼层
高人,问下你的代码,你在main里面调用的时候,OSMemCreate(....)实际上没有使用&err,而编译却通过了,我复制你的代码过去,编译却挂了,问下在你是要函数调用的时候,怎么做到少一个形参也可以完成调用的呢?

出0入0汤圆

发表于 2014-6-10 22:27:16 | 显示全部楼层
还有一点,USART1.C里,unsigned char USART1WriteDataToBuffer(unsigned char *buffer,unsigned char count),这个函数的第3句return时没返回任何东西,和我们常见的指定的类型的函数返回值必须匹配的形式有所出入,楼主可否详解一下,小弟将该代码拿来请教,很多朋友都不是很理解这里为啥会通过编译

出0入0汤圆

发表于 2014-6-11 17:51:02 | 显示全部楼层
好帖顶起

出0入0汤圆

发表于 2014-6-11 19:26:31 | 显示全部楼层
mark,一个很好关于串口的。

出0入0汤圆

发表于 2014-6-12 09:47:11 | 显示全部楼层
好贴,一定要顶

出0入0汤圆

发表于 2014-6-25 13:11:39 | 显示全部楼层
关键是拼音检索!标记!串口环形队列.

出0入0汤圆

发表于 2014-6-25 15:06:52 | 显示全部楼层
貌似很酷,学习,加顶!

出0入0汤圆

发表于 2014-6-30 14:48:22 | 显示全部楼层
多谢楼主,这个学习了。

出0入0汤圆

发表于 2014-6-30 15:14:32 | 显示全部楼层
我标记过吗?

出0入0汤圆

发表于 2014-7-4 16:03:00 | 显示全部楼层
你好!看了你的程序,调试中发现对于字符串(第2行)可以无误的收发程序,因为字符串有结束符‘\0’,请问前辈如何发送如下面的普通十六进制呢。
const unsigned char Msg0[]= {0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01};

出0入0汤圆

发表于 2014-7-4 16:28:35 | 显示全部楼层
还以为是windows下的驱动程序。

出30入0汤圆

 楼主| 发表于 2014-7-5 21:49:49 | 显示全部楼层
XIUQIN 发表于 2014-7-4 16:03
你好!看了你的程序,调试中发现对于字符串(第2行)可以无误的收发程序,因为字符串有结束符‘\0’,请问前 ...

有两个发送函数的,一个尾号是Fun,一个市data,fun是发送字符串的,到'\0'截止,还一个一个函数是指定发送数据的长度的,可以发送任意个指定数量的'\0'。
你仔细看看代码,不然不会使用

出0入0汤圆

发表于 2014-7-7 11:48:08 | 显示全部楼层
本帖最后由 XIUQIN 于 2014-7-7 11:53 编辑
linquan315 发表于 2014-7-5 21:49
有两个发送函数的,一个尾号是Fun,一个市data,fun是发送字符串的,到'\0'截止,还一个一个函数是指定发 ...


谢谢!已解决。使用这个函数就可以了unsigned char USART1WriteDataToBuffer(unsigned char *buffer,unsigned char count)。现在准备多个串口同时使用,感觉在动态内存分配这块可能需要再分一个区给多出的串口使用,并且还需要一个DMA通道。我很菜,学习中。。。。。。。
   

出0入0汤圆

发表于 2014-7-7 12:40:28 | 显示全部楼层
支持一下楼主

出0入0汤圆

发表于 2014-8-4 17:46:13 | 显示全部楼层
mark好东西,学习

出0入42汤圆

发表于 2014-8-4 18:40:18 | 显示全部楼层
楼主是我的楷模

出0入0汤圆

发表于 2014-8-28 16:25:28 | 显示全部楼层
怎么工程编译都失败啊

出0入0汤圆

发表于 2014-8-28 16:56:38 | 显示全部楼层
刚看到,撸主分析的很不错!

出0入0汤圆

发表于 2014-9-7 07:28:30 | 显示全部楼层
好东西,mark

出0入0汤圆

发表于 2014-9-7 08:37:52 | 显示全部楼层
好贴留名                    

出0入0汤圆

发表于 2014-9-7 10:10:11 | 显示全部楼层
专业,有很多借鉴的地方

出0入8汤圆

发表于 2014-9-7 12:22:56 | 显示全部楼层
非常好

出0入0汤圆

发表于 2014-9-7 12:41:24 | 显示全部楼层
拼音输入法、串口中断发送接收、DMA串口发送、环形缓冲区、内存动态分配管理(来源于uC/OS),知识点确实丰富。挖个坟

出0入0汤圆

发表于 2014-9-25 14:13:06 | 显示全部楼层
你好楼主,一个问题,
1. 这段代码什么作用呢?       
TIM_OCStructInit(&TIM_OCInitStruct);
TIM_OCInitStruct.TIM_OCMode=TIM_OCMode_Timing;
TIM_OCInitStruct.TIM_OCPolarity=TIM_OCPolarity_High;
TIM_OCInitStruct.TIM_Pulse=4999;
TIM_OC1Init(TIM2,&TIM_OCInitStruct);

出0入0汤圆

发表于 2014-9-25 15:32:50 | 显示全部楼层
刚刚的 好的很 收藏

出0入0汤圆

发表于 2014-9-25 16:00:21 | 显示全部楼层
cool      

出0入0汤圆

发表于 2014-9-25 17:46:22 | 显示全部楼层
串口+环形队列,MARK

出0入0汤圆

发表于 2014-9-26 10:48:58 来自手机 | 显示全部楼层
谢谢分享!

出0入0汤圆

发表于 2014-9-26 11:27:10 | 显示全部楼层
就是的,有人讲解的总比自己看的理解的快还透彻,随便就评论别人的代码是一种不负责任的做法

出0入0汤圆

发表于 2014-9-30 11:03:03 | 显示全部楼层
本帖最后由 mcuzxc 于 2014-9-30 11:08 编辑

貌似 楼主讲解的 和代码 还是有出入的,不一样,比如,USART1SendTcb数据结构,并不是使用index成员链接在一起的,memindex并没有使用,而是直接使用index指向该内存块的地址。。

出0入0汤圆

发表于 2014-9-30 11:54:54 | 显示全部楼层
受益良多!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-3-29 18:38

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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