RAE RET程序

所属分类:文章/文档
开发工具:C/C++
文件大小:4338KB
下载次数:7
上传日期:2018-01-02 09:56:15
上 传 者liu77620563
说明:  兼容RET设备,程序用于通信行业的电调天线
(Compatible with RET equipment, the program is used in the telecommunication industry's electric tuning antenna)

文件列表:
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序 (0, 2017-11-25)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App (0, 2017-11-25)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\24cxx.c (10073, 2017-03-22)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\24cxx.h (1119, 2014-09-26)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\aisg.c (91649, 2017-09-19)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\aisg.h (4393, 2017-06-23)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\annex.c (80795, 2017-07-12)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\annex.h (110, 2012-07-12)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\driver.c (37423, 2017-08-28)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\driver.h (398, 2014-08-17)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\flash.c (6524, 2012-08-22)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\flash.h (111, 2012-08-22)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\hdlc.c (19789, 2017-09-20)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\hdlc.h (2279, 2013-12-17)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\main.c (37006, 2017-09-19)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\ret.h (22005, 2017-09-19)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\stm32f10x_conf.h (3125, 2009-10-16)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\stm32f10x_it.c (10434, 2017-09-19)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\stm32f10x_it.h (2005, 2017-06-22)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\systickdelay.c (1245, 2016-03-09)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\systickdelay.h (415, 2012-11-19)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\timer3.c (6350, 2017-07-28)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\timer3.h (262, 2016-03-09)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\usart3.c (4061, 2017-09-19)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\App\usart3.h (511, 2012-07-12)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\BEE55179.tmp (39227, 2012-11-29)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\BOOT.bin (4112, 2012-11-13)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\DebugConfig (0, 2017-11-25)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\DebugConfig\FLASH_STM32F103RE_1.0.0.dbgconf (6956, 2015-12-10)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\JLink Regs CM3.txt (497, 2013-08-14)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\JLinkLog.txt (157152, 2013-08-14)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\JLinkSettings.ini (285, 2012-11-01)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\LIB (0, 2017-11-25)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\LIB\CMSISV1.2.0 (0, 2017-11-25)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\LIB\CMSISV1.2.0\Core (0, 2017-11-25)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\LIB\CMSISV1.2.0\Core\CM3 (0, 2017-11-25)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\LIB\CMSISV1.2.0\Core\CM3\core_cm3.c (17206, 2009-06-23)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\LIB\CMSISV1.2.0\Core\CM3\core_cm3.h (46533, 2009-06-23)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\LIB\CMSISV1.2.0\Core\CM3\startup (0, 2017-11-25)
2288 1703 4个序列号1tuo6抽屉式可插拔RAE RET程序\LIB\CMSISV1.2.0\Core\CM3\startup\arm (0, 2017-11-25)
... ...

1 串口3接收到 0x01 关闭定时器2和定时器3 ,定时器4和定时器5 收到 0x02 开启定时器2, 收到 0x03 开启定时器3, 收到 0x04 开启定时器4, 收到 0x05 开启定时器5, 2 定时器2中断服务程序发送数据0X02到PC 3 定时器3中断服务程序发送数据0X03到PC 4 定时器3中断服务程序发送数据0X04到PC 5 定时器3中断服务程序发送数据0X05到PC 6 加入systick 模块,主程序初始化 SYSTICKDELAY, 调用delay_ms(); 此4个模块都能正常工作,可以用来测试硬件是否存在问题等。 注意:一:测试时,串口TX,RX线必须接在RS485转换芯片的前段,因为程序里没有对 RS485转换芯片的读写方向进行控制 二:串口调试助手注意其串口号的选择,以及选择10进制发送 V 2-0-1 调整整个软件架构 1 调整马达转动力矩 2 判断是否有必要加入USART3 DMA传输控制 3 整合进HMC5883的功能 TDFA+COMPRESS V1-2 开始和华天的混合扫描的时候扫描不到的原因是 :先扫描到华天的后,就给他安排地址,然后这个安排地址的帧 被我们的收到,就把地址改的和华天的一样了,所以把 sPI2.HDLCSlaveAddress 的赋值防到只有真正响应地址安排帧里,这样就解决了这个问题 发现问题如下 1 无法响应带记忆功能的扫描帧 2 如果发生扫描碰撞,会不会导致接受中断函数查找0X7E的时候发生错误?? 3加入小准,水平调教多从记得 处理 4 总线碰撞后采取补救措施 第一,清除碰撞前的数据,发送数据后关闭总线一段时间 经过测试能正确扫描到4个并能正确操作 v1-5 1 合并24C02和HMC5883 OK v1-6 1 添加HMC5883校准函数 2 支持线程的任意小数输入 v1-7 1 添加水平,垂直线程的任意小数输入的功能 2 马达运动停止后写入当前的角度值 仅V05和H15线程 ,待记忆功能 3 调整水平线程的波形,改成和垂直一样 清除1-10个存取单元1 v1-8 1 motorjam 函数增加多机处理 2 以后还要添加unsupport command 等 3 motorjam以后,为什么有时能继续通讯,有时就直接DISCONNECT?? 4 将马达速度数组修改8 5 实际安装后出现以下问题:a 马达运动超过时间后,没有显示Actuate jam和motor jam ,只显示 tilt moving 解决:iBusy没有清零; b 马达速度变慢,力度不够,修改速度数组 SpeedArray[]={5,6,7,8,7,6,5} c 角度调整后显示的是取余相减的角度 初步解决方法:应该保存他的实际角度,而不是刻度。 d 定时服务函数不使用库函数 v1-9 1 HMC5883实际测量中减去OFFSET 完成 2 增加UNSUPPORT PROCEDURE 没完成 3 开机显示上次的报警 没完成 4 增加FRFM帧。 没完成 V2-1 1 修改校准函数,0-360度校准改成时间上的校准 2 每采集到一个刻度,就更新一次TIMER4 可以避免运行过久而导致的MOTOR JAM 没有完成 3 马达出力还是不够大 SpeedArray[]={5,7,9,7,5} V2-2 1 RET的的UID按内部命名规则 V2-3 1 v05->M1 H15->H1 V02->M2 马达线程用马达来命名,修改每个马达对应的线程时,只需要修改马达对应的参数即可 2 加入MOTOR JAM ACTUATOR JAM的状态标志,一旦马达运动就必须清除标记 运动完成就必须置位标记。如果马达运动超时 ,就发送超时的消息 3 开机时候在获得0X12的命令后应立刻给出警告消息。 4马达运动超过时间的判断应该放在M1TOSETTINGANGLE的里面,一旦移动过一个步数就清除定时器然后在重新记数,每次运动过程中判断超过时间的标志 5 NOTCALIBRATED MORTOR JAM ACTUATOR JAM 标志存放于EEPROM V2-5 加入将配置消息写入,读出EEPROM的函数 但实际上函数体的内容没有写出 V2-6 计划添加多天线处理函数 加入完成后发现ANT2角度不准确 V2-7 失败 V2-8 发现M2 AD通道设置为0X00 错误,改正为0X01;但发现问题为 设置角度完成后 PAC的角度信息 不会更新,同时不支持天线1的水平角度 V2-9 改成AISG支流下多天线的命令 剩下问题:不支持水平马达?? V2-10 把ANT的SERIALNUMBER修改后就可以支持水平马达了 多天线程序OK了 V2-11 把HMC5883的角度调整为 0-180 就加上180 180-360就减去180 v2-15 增加其他ANNEX B, V2-16 增加其他AISG CMD ,并当角度调整超出范围时,采用最大最小角度作为移动的目标 增加断开链路的功能 从机3分钟没有交换数据就自动断开连接?没有增加 V2-17 加入安排了地址后就不对00,00类型的扫描响应功能 将ZeroRecBUFFER 统一放在main.c里面 并当角度调整超出范围时,采用最大最小角度作为移动的目标, ANTSetTilt()函数 加入以下代码就不行了,什么原因?其他都OK if(NewAngle>=ANT2MaxTilt) NewAngle=ANT2MaxTilt; if(NewAngle<=ANT2MinTilt); NewAngle=ANT2MinTilt; V2-10 后来扫描布道的原因:因为PAC里保存的UID与从机的UID前面16位都是相同的,但是地址安排的判断为所有从机的UID的位的值相同就作出反应,没有判断整个长度,V2-18加上 另外V2-17设置TILT角度时,每次都只走到最小位置,把下面程序注释掉就不会了,原因还不知道?COPY 单天线的这段代码后就正常了 对比如下: if(NewAngle>=ANT2MaxTilt) NewAngle=ANT2MaxTilt; if(NewAngle<=ANT2MinTilt); NewAngle=ANT2MinTilt; if(NewAngle>=MaxTilt) NewAngle=MaxTilt; if(NewAngle<=MinTilt) NewAngle=MinTilt; V2-18 修改数据类型并符合实际的类型 OK 没有问题 加入 if(rPI1.PL!=sPI1.PL) return ; 加入 if(rPI2.HDLCAddress==sPI2.HDLCAddress) //如果已经安排了地址 if(rPI3.BitMask[18]==0x00) //并且如果位掩码最后一位为0X00 return; 以后的版本将加入一个定时器,定时时间为3MS-10MS 时间到了还没处理完,就用定时器发送UFRAME 然后加入报警的程序部分 V2-19 1 将单天线的CONFIGURE DATA 去掉 ,使用多天线ANT1的DATA 单天线的ANT 与多天线的ANT1共用 CONFIGURE DATA 2 增加了扫描记忆功能,即如果已经安排了地址,则对全扫描的帧不在进行响应 V-21 增加告警上传功能,当程序调用了 0X06,0X12后就启动定时器6,定时器6定时5ms 当定时时间 到,就查询ProcessComplete标志,如果为0 说明处理完成,则发送0X85 AlarmIndication帧,并关闭定时器,如果为1则什么也不做 v2-22 加入关闭AD转换的电阻电流 v2-23 加入设置附录B的数据,将数据保存到EEPROM V2-28 校准后消除告警 V2-29 把ACTUATOR,NOTCALIBRATED MOTORJAM等告警分开来处理,还没有加入BUSY的告警 V2-30 加上一些SetDeviceData的函数 ,测试写EEPROM的最小间隔 1ms可以写 ,发现警告更新部分,如果没有警告更新,则不会发送S帧,需要加上S帧处理 if(ANT2Count==3) { sFrameProcess(); return ; //没有告警 则返回,不调用AISG_Encode } H1水平马达 和垂直马达卡住后,如果水平卡住,垂直正常后ANT1将显示正常,说明不符合实际情况,需要改正 卡住后需要向相反的方向探测一次零点。 if(ADC<0) ADC=-ADC;是否错误 v2-31 马达卡住后就反转 v2-34 coyp from v2-31 想在V2-32的基础上把SetDeviceData部分的功能加上去,在V2-32 copy成V2-33后发现 不方便,但是发现不如copy v2-31 方便 ,因为V2-31在数据类型方面已经修改好了, 此版本可以正确的读到DEVICEDATA了 与以前版本不同之处在于 1 在初始化的时候同意全部读出DEVICEDATA,保存在全局变量里 2 在GETDEVICEDATA的响应中不在读EEPROM 此项没有完成 3写入设备数据时候 将数据写入EEPROM里 此项没有完成 V2-35 COPY FROM V2-34 并完成上一版本没有完成的项目 V2-29 ,V2-32, V2-34都可以用 写入设备数据的时候0不写入 ,这样可以保持数据对齐, 发现如果上传数据错误将会disconnect v2-36 copy from v2-35 在v2-35调试好MAXTILT后,copy它,再来骤步调试其他参数 v2-35 不通过的原因 1 AT24CXX02的函数COPY 马达驱动里的写角度 2 将高位 低位字节做顺序修改后就OK 了 一直感到奇怪问题出在哪里,这2个原因都不太成立,但是如此修改后,确实正常了,迷惑 v2-38 copy from v2-36 增加多天线的天线1配置函数 但是没有成功,估计是INFORMATION[]数据里多了一个天线号 导致写数据和传数据的时候出现混乱了, 发现软件BUG ZeroRecBuffer()不及时,导致TCP处理的时候出错了 增加精度范围 到10 v2-40 copy from v2-38 先反转,卡住再正转 V2-41(H15) Copy from version 2-40(H15) 加上串口1 修改序列号和校准标志,可以采用多线程 成功修改了序列号 , v2-42 copy from V2-41(H15) 加上修改校准标志的函数 version 2-42(H15)(高低温度测试正常版本)copy from v2-42; v2-43(15) copy from version 2-42(H15)(高低温度测试正常版本)的问题如下; 因为 version 2-42(H15)(高低温度测试正常版本) 1 //如果有3个从机,安排了第一个从机的地址后,再安排第二个从机的地址 //这时,第一个从机就会响应第二个从机的地址安排,导致会修改第一个从机的rPI2.HDLCAddress //变的跟第二个的一样,当全为0x00的扫描帧发出的时候,这个 if(rPI2.HDLCAddress == sPI2.HDLCAddress) //就不再成立了,所以他也会去响应这个扫描帧,导致产生碰撞,而失去扫描记忆功能 增加一个宏定义 DEFAULT_ADDRESS 2在烧录的序列号小于16位时出现 扫描到的序列号正常18位,但是进入以后得到的序列号就多一位,后面多了一个6 发现是控制器的BUG 3 多天线的信息域字段里多了一个天线号码 ,所以devicedata应该后移了一位 此版本修改好ANT1的SetDeviceData

近期下载者

相关文件


收藏者