风之山谷 发表于 2017-12-21 16:17:30

话题1不能回复。在这里回复了,思路是把一个按键设置成最高级别中断,Bin文件不能超过这个按键的中断,然后当按下这个案件的时候进入中断,把其他中断关闭了,一直等待直到再此按下此按钮才退出中断,同时把关闭的中断打开。

话题2、3都已经提出思路了。:)

jinyi7016 发表于 2017-12-21 17:44:16

已全部回答、参与

超級稻草人 发表于 2017-12-21 19:13:02

话题1:在单片机上运行app程序
          这对单片机提出了高的要求,能够运行系统才行,看来也只有ARM类型的单片机才行.

话题2:感觉STM32F107的接U盘导出数据比较难用
      没使用过,可能需要配置些文件吧.

话题3:讨论一下STM32编码器接口
      可以按照标准编码器接口来编程使用.

wofei1314 发表于 2017-12-21 19:30:14

问题1,可以用IAp的方式解决....

具体的话,自己写一个引导程序,引导程序读其他的若干程序,需要运行那个程序的时候就直接跳转过去运转,需要退出的时候再跳转回引导程序,引导程序可以继续读其他科运行的程序,用户断定后,使用这个IAP.....

对于有外接SRAM或者SDRAM的,可以通过把修改分散加载文件来选择把程序加载到RAM运行

slotg 发表于 2017-12-21 19:41:57

已参加 :D

xuguomin 发表于 2017-12-21 19:50:50

签到签到

the_newbie 发表于 2017-12-21 19:56:28

三个问题感觉有点难,对于我这种菜鸟来讲,只能静等大神了,慢慢学习吧

nyszx 发表于 2017-12-21 20:00:01

不用在这里发帖了吗

yangjiaxu 发表于 2017-12-21 20:10:49

成功参加啊 嘿嘿 但是有的真心不会啊

wolfgang2015 发表于 2017-12-21 22:37:46

话题1:在单片机上运行app程序
主要思想
主程序具备IAP功能,能将访问到的BIN文件烧写到SRAM并运行(PC指针运行到该区域);
Bin文件代码在运行完毕后,PC能恢复到主代码的PC栈中的代码继续执行主代码的程序;恢复主程序中断偏移量;

话题2:感觉STM32F107的接U盘导出数据比较难用
2的基本步骤如下:
1、USB要设置为主机模式;
2、读取U盘配置参数区信息动态识别U盘大小
3、根据CSV文件大小判断FATFS文件系统剩余空间是否足够;
4、初始化U盘中Flash(文件系统来做,底层操作可以参考实现)
5、块写文件内容

话题3:讨论一下STM32编码器接口
可不用两个定时器
stm32的每个定时器的通道1和通道2内置了正交编码器模块,可以直接使用。
....
TIM_EncoderInterfaceConfig(ENCODER_TIMER, TIM_EncoderMode_TI12,   TIM_ICPolarity_Rising, TIM_ICPolarity_Rising);//使用编码器模式3 
....
TIM_ICInitStructure.TIM_ICFilter =ICx_FILTER;//选择输入比较滤波器  
通过读取TIM1->CNT的值来获取正交编码值了。
页: 1 [2] 3
查看完整版本: (已公布)12.21 狂欢节问答