|
电脑串行端口(serial port) 和单晶片通讯
[复制链接]
|
|
楼主 |
发表于 26-3-2010 11:59 AM
|
显示全部楼层
回复 40# wkloh
哦。。?一样一样。 我最近也开始动cortex m3. 你用什么series的? |
|
|
|
|
|
|
|
发表于 26-3-2010 01:06 PM
|
显示全部楼层
回复 41# fritlizt
我用STM32F103FxxT6 series的, STMicroelectronics 的单晶片。
价格是个很大的诱惑。。。。
high density series 去到112 GPIO,SDIO function等其他功能等。。。 |
|
|
|
|
|
|
|
发表于 27-3-2010 01:28 PM
|
显示全部楼层
回复 39# wkloh
谢谢你的回复,LED 测试 PROGRAM 的却运作,可就是 received 不到 data
baud rate 等 setting 应该不会有错 |
|
|
|
|
|
|
|
发表于 27-3-2010 05:39 PM
|
显示全部楼层
回复 43# xkore
测试两个步骤:
1. PC ---------
i) connect RS232cable。
ii) cable pin2 short to pin3。
iii) Open HiperTerminal.
iV) setting 参考帖#39
V) press keyboard "A" button.
Vi) 如果回传"A",证明PC操作正常。
2. MCU----------
MOV TMOD,#20H
MOV TH1,#-3
MOV SCON,#50H
SETB TR1
AGAIN: MOV A,#41H
MOV SBUF,A
HERE: JBC FLED
JMP HERE
FLED: ;<put falsh LED code here>
JMP AGAIN
external crystal选用11.0592MHz |
|
|
|
|
|
|
|
发表于 30-3-2010 03:49 PM
|
显示全部楼层
我发现可能是我的 rs232 > max232 的 connection 出了问题
以下是 typical connection
而我的如下
|
|
|
|
|
|
|
|
发表于 30-3-2010 03:53 PM
|
显示全部楼层
serial port 的 transmit pin 应该 conenect 到 8051 的 receive pin
而 serial receive >> 8051 Tx
现在问题如下,我的 PCB 已经 solder 好,没得改了
是不是可以用 male connector 来 cross Tx & RD |
|
|
|
|
|
|
|
发表于 30-3-2010 04:00 PM
|
显示全部楼层
以下方法是否可行 ?
|
|
|
|
|
|
|
|
楼主 |
发表于 30-3-2010 04:36 PM
|
显示全部楼层
回复 47# xkore
可以
没问题。
5除了circuit gnd,也要接去对面的5号 |
|
|
|
|
|
|
|
发表于 2-4-2010 03:17 PM
|
显示全部楼层
回复 41# fritlizt
版主,你用的cortex-m3是什么series的!可以分享吗! |
|
|
|
|
|
|
|
楼主 |
发表于 3-4-2010 09:52 AM
|
显示全部楼层
回复 49# wkloh
stm32f high density 系列。 学习中 |
|
|
|
|
|
|
|
发表于 3-4-2010 03:52 PM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 6-4-2010 05:36 PM
|
显示全部楼层
谢谢大家热心回答,我现在已成功在VB。NET 读取 sensor data..
接下来我要在VB上自动显示及更新data,而不是press button 才读取 data
不知道大家有没有一些建议如何一直looping serial port reading program |
|
|
|
|
|
|
|
发表于 7-4-2010 03:30 PM
|
显示全部楼层
回复 52# xkore
请参考第30楼的,答案就在那里了。
只要稍微修改就成了! |
|
|
|
|
|
|
|
发表于 7-4-2010 06:13 PM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 8-4-2010 04:41 PM
|
显示全部楼层
不知道方法是否适合,我使用2个 timer 成功自动更新 VB read serialport 的 data
接下来就是显示在ASP.NET |
|
|
|
|
|
|
|
发表于 8-4-2010 05:30 PM
|
显示全部楼层
回复 55# xkore
以你到那个简单数据接收要求,1个timer就能完成了。
不过,不管用几个timer处理都无所谓,只要确保拿到真确资料就行了。(学习就是这样过来的)
程序编程、结构优化功力,就取决于个人经验了!
加油! |
|
|
|
|
|
|
|
发表于 10-4-2010 05:21 PM
|
显示全部楼层
请问如何用一个 timer ?
------------------------
两个timer
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
If SerialPort1.IsOpen = False Then
SerialPort1.Open()
TextBox1.Text = SerialPort1.ReadChar
Timer1.Enabled = False
Timer2.Enabled = True
End If
End Sub
Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick
If SerialPort1.IsOpen = True Then
SerialPort1.Close()
Timer1.Enabled = True
End If
End Sub
End Class |
|
|
|
|
|
|
|
发表于 10-4-2010 09:13 PM
|
显示全部楼层
回复 57# xkore
可以说明一为何要不停开关串口?
什么原因促使用这个方法的啊!
不合乎逻辑! |
|
|
|
|
|
|
|
发表于 11-4-2010 01:33 AM
|
显示全部楼层
若没有重新开关serialport,我read不到最新的data.. |
|
|
|
|
|
|
|
发表于 11-4-2010 01:36 AM
|
显示全部楼层
我之前在 vb 上做了个试验 1 open serial port button, 1 close serial port button, 1 display to textbox button,若没有从新开关串口,就读不到最新的data |
|
|
|
|
|
|
| |
本周最热论坛帖子
|