Youngar
游客
游客
阅读:2858回复:12

Control MCU Via RS232

楼主#
更多 发布于:2001-07-31 17:50
Hi,
(1)我想通过RS232串口来控制MCU(AT89C51/或AVR MCU;有UART接口),目的是修改EEPROM中的内容.不知任何实现?哪里有Sample?
(2)关于上位机PC与MCU之间的通讯,在哪里可找到Download资料?
(3)上位机PC上创建一个界面,允许User去修改EEPROM中的配置内容.请问:通过RS232来实现时(与MCU打交道)是否要写Device Driver?
非常感谢您能在百忙之中给予答复.
jetnet
游客
游客
沙发#
发布于:2001-08-02 10:11
在WIN98读写端口本来就没有保护,所以没必要写驱动程序了,你只要轮询端口就行了。
我觉得你所说的,实现应该不难,首先,你用什么EEPROM,看看它的读写时序,然后MCU按它的时序读写就行了。其实说白了,MCU在这就是把串口的数据格式转换成EEPROM的数据格式。
不知道你的MCU的其他工作如何。单独实现不难,就是整体配合的问题!
jeosph
驱动中牛
驱动中牛
  • 注册日期2001-04-19
  • 最后登录2006-08-08
  • 粉丝0
  • 关注0
  • 积分96分
  • 威望11点
  • 贡献值0点
  • 好评度9点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2001-08-02 20:51
我的建议:
用并口通讯,这样一来可以使电平兼容,另外时序也好控制。程序也好编,PC机侧用C写一个程序,MCU侧的也不难!
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
地板#
发布于:2001-08-03 15:15
[QUOTE]原本由 jeosph 发表
[B]我的建议:
用并口通讯,这样一来可以使电平兼容,另外时序也好控制。程序也好编,PC机侧用C写一个程序,MCU侧的也不难! [/B][/QUOTE]
根据他的系统特点,如果真的用并口,那肯定要累死!
用Kei C51写firmware,只要用6行代码设定好UART,就可以轻松的用printf把信息从UART发到PC,用getch就可以接收PC发来的数据。而且Kei有例子,10分钟就可以搞定了。
PC端更简单,不需要自己写任何程序,用“超级终端“就可以和firmware通讯了。
总之,这种情况下用串口操作,简直是easy, easy,再加easy!!!!
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
Youngar
游客
游客
地下室#
发布于:2001-08-06 16:58
(1)非常感谢Code Boy-Ray Yang!确实并口实现很困难.(我的目的是修改AT93C46这颗EEPROM中的内容)我也在考虑使用"超级终端"(Hyper Terminal)来实现,以方便用户.但是未曾用过,还请您告知在哪里有资料可查?我已给您email还请您在百忙之中给予指点.
(2)Hi Jeosph,并口通讯"电平"确实容易匹配.但是好象要写Device Driver了.
(3)Hi Jetnet,所有的代码要配合起来必须细致考虑才行.MCU还有其他重要工作要做,如电源管理等.
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2001-08-07 09:00
1. 如果你对RS232了解的话,超级终端的用法就很明了了。你可以先用2台PC用超级终端连起来学习一下。
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
Youngar
游客
游客
6楼#
发布于:2001-08-07 10:04
非常感谢Ray Yang!您的email已收到.但是对于Firmware中如何来做,我没有思路?不知能否提示一下?另外我查了好多资料,讲述"超级终端"的甚少,不知资料的名称?
Thanks in advance.
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2001-08-08 09:58
Keil C里面的例子都有。getch,printf都是和串口打交道的。超级终端自己不是有帮助的吗?
你还是先动手做起来吧!老是这么问,不实践,不会有什么进展的。
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
Youngar
游客
游客
8楼#
发布于:2001-08-08 11:00
非常感谢Ray Yang的指点!
liufoxs
驱动牛犊
驱动牛犊
  • 注册日期2002-01-18
  • 最后登录2005-12-31
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2003-03-04 11:42
班主:

你说到:
用Kei C51写firmware,只要用6行代码设定好UART,就可以轻松的用printf把信息从UART发到PC,用getch就可以接收PC发来的数据。而且Kei有例子,10分钟就可以搞定了。
PC端更简单,不需要自己写任何程序,用“超级终端“就可以和firmware通讯了。
总之,这种情况下用串口操作,简直是easy, easy,再加easy!!!!

你说的这种情况getch接收数据会丢掉很多的.像传输文件等
Auto flow control 应该应用才行.
具体怎么控制,我现在还不明白,你若清楚请谈一下
liufoxs
jack_zhu
驱动牛犊
驱动牛犊
  • 注册日期2002-03-26
  • 最后登录2008-05-16
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2003-03-04 18:28
这个问题使比较简单,首先从串口到MCU的硬件连接要正常,并且有速度要求,在FIRMWARE里用简单的指令就可以将数据发送到TELMINAL。Auto flow control 一般是关的。
samxie
驱动牛犊
驱动牛犊
  • 注册日期2001-07-02
  • 最后登录2004-08-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2003-03-07 15:36
不进行流量控制肯定回出问题(丢数据), UART硬件并不能控制流量, 需要Firmware 中使用XON/XOFF等协议控制, 或DTR硬件握手.
yzx_dragon
驱动牛犊
驱动牛犊
  • 注册日期2002-12-16
  • 最后登录2005-09-08
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2003-03-30 17:14
大批量数据的传输才需要流量控制。

不是所有的应用都需要flow control。
游客

返回顶部