Commit Graph

144 Commits

Author SHA1 Message Date
Stone eba9043046 除了Buffer其它任何地方不得使用memcpy/memset 2016-03-11 04:39:30 +00:00
Stone 243de19352 分离出来内存缓冲区Buffer,编译通过,未测试! 2016-03-06 02:14:53 +00:00
nnhy 085d9856cb F0串口驱动也使用发送缓冲区加速 2016-01-19 06:23:27 +00:00
WangQiang 8b8a9a6cc9 精简日志 2016-01-16 02:43:35 +00:00
Stone 280db66cc2 兼容编译通过 2016-01-13 18:59:54 +00:00
Stone 8600b7ca80 统一GPIO_AF 2016-01-13 18:52:41 +00:00
Stone fc40e76b08 串口、SPI、定时器,采用枚举来初始化 2016-01-13 18:14:34 +00:00
Stone 9ea290c465 SmartOS独立一套断言,不依赖于固件库。
串口类初始化逻辑重构,编译通过。
Spi编译通过
2016-01-13 16:55:29 +00:00
Stone 3f865a8ef2 串口编译通过 2016-01-13 15:31:29 +00:00
nnhy 0b1b26bd37 串口读取不到数据时,返回0长度 2016-01-11 11:55:46 +00:00
nnhy 67e31e1c83 设置GPS波特率时,还需要发送保存命令 2016-01-10 11:41:50 +00:00
Stone 34f6298f11 串口驱动支持设置MaxSize,以支持读取超过256字节的超大数据包。
编译通过,测试通过
2016-01-09 17:04:32 +00:00
Stone 4c8cb2b0a5 串口允许设置数据包间隔,编译通过,未测试 2016-01-09 16:07:29 +00:00
nnhy 4d4928053f 只有调试版打开串口输出 2015-12-30 09:48:56 +00:00
nnhy ce63af974c SmartOS日志支持中途改变调试口 2015-12-30 08:52:08 +00:00
nnhy 3706908e61 临时加大接收缓冲区,GPS数据包太大了 2015-12-25 17:15:24 +00:00
nnhy 999369a6b2 F1不需要分散加载,那是130才有的问题,需要把重点代码放到系统最前面 2015-12-05 09:06:48 +00:00
nnhy cb961ba852 修正宏定义错误,导致串口不能及时输出数据 2015-12-04 14:07:20 +00:00
WangQiang 970f39c25e 又见神秘23号中断,比GD32F103VE上更严重。 频繁程度达系统一直在中断里出不来 2015-12-04 02:49:38 +00:00
nnhy 1bf54a8d19 串口接收缓冲区默认放大到128字节,每次接收处理也使用128字节的临时缓冲区,Zigbee模块把缓冲区再次加大到512字节,经测试,解决了接收Zigbee指令的粘包分包问题 2015-11-26 04:48:04 +00:00
nnhy 9523a0c4e2 大部分数据操作参数可以使用Array替代ByteArray,大大减少ByteArray构造函数的执行 2015-11-13 11:46:00 +00:00
nnhy 6bdc22cb90 v3.1.2015.1108 增加系统配置存储模块,增加电源管理模块 2015-11-08 02:17:19 +00:00
nnhy 2921f7a2f9 频繁调用的代码,分散加载到Flash前面,因为GD32F130/150最后32k比较慢 2015-10-28 12:14:46 +00:00
nnhy 6b966abe59 通过分散加载文件,把核心代码提升到前面去 2015-10-28 09:33:12 +00:00
nnhy 40f5184385 GD官方提供,因GD设计比ST严格,导致一些干扰被错误认为是溢出 2015-10-28 03:53:32 +00:00
nnhy 46b0595359 使用while替代if,快速接收数据的时候,也许没那么多问题 2015-10-28 00:33:26 +00:00
nnhy 90b28c8c9f 在USART_DR寄存器中写入了最后一个数据字后,在关闭USART模块之前或设置微控制器进入低功耗模式之前,
必须先等待TC=1。使用下列软件过程清除TC位:
	1.读一次USART_SR寄存器;
	2.写一次USART_DR寄存器。
2015-10-27 10:06:04 +00:00
nnhy f023707ae8 设置任务的开关状态,同时运行指定任务最近一次调度的时间,0表示马上调度 2015-10-27 08:13:02 +00:00
nnhy 9a49500b2e STM32F0库时,不启用中断 2015-10-26 02:45:26 +00:00
WangQiang b0b844ec14 RTM 模式下使用引脚指示串口溢出事件 2015-10-26 02:31:55 +00:00
nnhy b5842fedd8 优化串口驱动,F0不需要使用输出缓冲区Tx,串口溢出问题消失,但是修改的地方貌似跟串口溢出无关 2015-10-26 01:18:07 +00:00
nnhy b691ae72bd 串口接收,字节间等待时间固定为2ms,解决103上Zigbee接收指令断成两截的问题 2015-10-22 12:29:29 +00:00
nnhy 73e4ab9dd3 只要注释这一行,四位触摸开关就不会有串口溢出错误 2015-10-13 16:02:12 +00:00
nnhy 8e3b352ed6 删除一批无用代码。
四位触摸开关还是出现数据溢出的问题,测试未能通过,会滚到10.9的版本倒是没有溢出
2015-10-13 15:44:29 +00:00
nnhy 25b75589b9 关闭定时接收串口数据的任务 2015-10-13 09:30:08 +00:00
nnhy e4230eb16c 优化串口接收,缓冲区没有数据时,少做处理 2015-10-13 07:11:08 +00:00
nnhy 4c7028306e 为GD32F130增加新的编译脚本,使用F0库和M3指令集 2015-10-09 08:03:00 +00:00
nnhy bbd42d8206 2015-10-08 10:59:26 +00:00
nnhy 3cc76e77cc 低频率的M0不能使用中断发送,否则过于频繁的中断会影响接收 2015-10-08 09:50:42 +00:00
nnhy 84f585a2f6 启用中断发送,在网关B上测试通过 2015-10-08 04:09:19 +00:00
nnhy eed7f61d93 微网协议去掉尾部的TTL和Retry,由标识位来承载
Zigbee有粘包情况,但是因为TTL/Retry的存在,导致后半截指令解析错误
2015-10-07 14:50:50 +00:00
nnhy 40c48ba2ce 串口默认最小大小是1,而不是8 2015-10-07 08:00:31 +00:00
nnhy 414b1dfdaf 优化串口接收中断处理的性能 2015-10-05 14:56:31 +00:00
nnhy d273ac7589 精简Sys,编译通过,测试通过 2015-10-05 14:04:34 +00:00
nnhy 884a147676 2015-10-05 13:30:27 +00:00
nnhy 5860970c88 任务操作函数全部修改为以毫秒ms为单位,所以需要减小1000倍
测试通过
2015-10-05 12:57:37 +00:00
nnhy 0c090906ff !!!系统时钟升级,采用基本定时器计时,计时精度Current修改为毫秒,滴答定时器用于高精度微秒级延迟
编译通过,系统时钟测试可工作,系统各个使用Current的地方未修改
2015-10-05 10:43:28 +00:00
nnhy 7a79872579 暂时注释任务唤醒,避免丢数据问题。测试Zigbee可靠性提升 2015-09-30 04:06:57 +00:00
nnhy f6b5ae1fac 串口接收中断必须以极快的速度完成,否则会出现丢数据的情况
判断缓冲区足够最小值以后才唤醒任务,减少时间消耗
缓冲区里面别用%,那会产生非常耗时的除法运算
在三位触摸开关上测试1M串口通信,收发数据完整
2015-09-30 03:09:59 +00:00
nnhy bea7c44c10 中断发送过于频繁,采用循环阻塞发送。后面考虑独立发送任务
经过测试,有利于改善Zigbee组网成功率
2015-09-29 09:15:30 +00:00