1.焊接部分
按照圖紙所示,將相應元件焊接到板子上.
圖1 控制電路板原理圖(Schematic Prints.pdf)
本次製作需要添加的元器件名稱及規格如下所示:
Item |
Designator |
Description |
Comment |
1 |
C3,C5,C7 |
貼片膽電容,豎線爲正端 |
10uF |
2 |
C4,C6,C8 |
貼片電容,無極性 |
0.1uF |
3 |
D1 |
3.3v電源指示燈,與R6配套使用,按照箭頭方向爲從正到負 |
發光二極管 |
4 |
J1,J2 |
接左右電機控制線 |
XH-2.54底座 4pin |
5 |
J3 |
5v電源接入 |
XH-2.54底座 3pin |
6 |
J4 |
編程器接入,有線通信接口 |
XH-2.54底座 5pin |
7 |
JP1,JP2 |
通信選擇 |
3pin單排針 |
8 |
R5 |
電阻 |
1K |
9 |
R6 |
電阻 |
220 |
10 |
S1 |
開關 |
自鎖開關7*7 |
11 |
U1 |
AMS1117-3.3電源 |
電源芯片 |
12 |
U2 |
單片機,先焊接一個20pin芯片底座 |
STC11L02單片機 |
圖2 元器件名稱及規格(全部元件規格可參見stcmcuCar.xls)
焊接注意事項:
1)此爲雙面板,元器件應統一放置在印有白色的元器件名稱的一面,切勿放在反面.
2)此板包含較多的貼片元件,對焊接技術要求較高.對於貼片元件,可先在其中一個貼片上上好錫,然後將元器件的一端先焊接在該貼片上,再將剩下的一端焊上去.貼片元件都較小,可用鑷子輔助.
3)焊接應基本遵循元器件由矮到高的原則,先焊接電阻和電容和U1和D1,然後焊接J1-J4,接着焊接JP1,JP2和S1,最後焊接U2的底座.
4)JP1和JP2的3pin跳針,連接12是開啓藍牙功能,連接23是串口,所以我們還需要把23連上.
5)開關S1焊接的時候將開關上的一個藍點(用記號筆做了記號的)對準板子上的一個點即可,同理,J1-J4的底座方向也要與板子上畫的相同,C3,C5,C7上有一個豎線的一端是正極,D1上有一個綠色的小箭頭與板上方向一致即可.U2的一段有一個凹進去的內圓,對準即可.
6)小車原有的幾塊板子的焊接可能也會有問題.最好可以順便測試修理下.以絕後患!小車已有的所有板子的原理圖及元器件規格等可參見KC1-Course-handout1.pdf
焊完後的板子如下所示:
2.調試部分
完成了板子的焊接後,先可以簡單測試下.將小車原有的在頂上的控制板拆下,將3pin的電源插頭插入剛做的板子上,D1應該會發出紅光(與開關狀態無關),證明電源工作基本正常.
然後需要製作USB線以及編程調試,具體可參看http://eelab.sjtu.edu.cn/Course/mod/forum/discuss.php?d=645
由於我們使用的是新的小車,上述地址中的部分信息已失效.以下爲可用信息摘錄:
3、USB線的使用
USB轉串口RS232通信電纜,TTL電平,用於單片機的串口和計算機USB口連接,通訊速率高達1M,並帶+5V電源。可以用於沒有串口的電腦或筆記本進行單片機編程、通信測試。可以直接與單片機的RS232 TTL信號連接,省去了RS232或485芯片;也可以用它實現各通信設備向目前流行的USB接口的轉換,+5V電源可直接用於+5V電路供電。
舊款USB轉TTL線(帶藍色線的) |
新款USB轉TTL線(帶綠色線的) |
四線:RS232 TTL RXD 蘭色 |
四線:RS232 TTL |
使用時請注意絕緣,不要短路,尤其是TXD與GND不能碰到一起,+5V和GND更不能碰到一起,由此引起的通信線損壞自行解決。
串口線最新驅動:
http://eelab.sjtu.edu.cn/Course/file.php/10/3/PL2303_Prolific_DriverInstaller_v110.zip
安裝後,電腦上將多出一個串口(com2或3或其他),(設備管理器可查到)通過程序控制串口的輸出。
使用時,將該線的白色(TXD)和黑色(GND)接入小車單片機的RXD腳和GND腳(在單片機小板上有字標明) 即可建立小車和計算機的串行通信。
其餘兩根線不用,請做好絕緣。
測試方法:
使用串口調試軟件,設定好串口號,通信速率,將線的TXD與線RXD(白色和藍色,千萬不能將黑色與任意一根接在一起,會短路!)接在一起,發送數據後可同時收回,可確認線是好的。
一款串口調試軟件:http://eelab.sjtu.edu.cn/Course/file.php/9/Car/AccessPort.rar
製作好的usb線如下所示:
電腦上需要的操作:
1) 安裝單片機的集成開發環境KeilforC51: http://eelab.sjtu.edu.cn/Course/file.php/9/Car/KeilC51v750a_Full.rar
2) 安裝STC-ISP下載編程燒錄軟件: http://www.stcmcu.com/datasheet/stc/stc-isp-v4.80/stc-isp-v4.80-not-setup.EXE
3) 安裝串口線驅動: http://eelab.sjtu.edu.cn/Course/file.php/10/3/PL2303_Prolific_DriverInstaller_v110.zip
4) 設置keil,增加對STC型號芯片的支持,需下載:http://www.stcmcu.com/datasheet/stc/STC-CDB/UV2.CDB
先將keil/uv2/下的uv2.cdb文件進行備份,然後用下載的新的文件進行替換即可.
調試部分注意事項1:
1) 確保原有的小車部件的工作正常.
2) 確保製作的USB線的幾根線之間相互絕緣.
然後就可以開始寫程序調試了.已經寫好了一個簡單的測試程序,可以測試小車前進,後退,左轉和右轉的基本功能.
小車完成後的樣子:
寫程序的基本步驟:
1) 打開keil uVision2,選擇Project->New Porject
然後選擇保存位置及工程的名字.然後選擇CPU的類型爲STC11L02.如果沒有該選項,說明補丁沒有打好,可參照上面 電腦上需要的操作(4) 打好補丁文件.
2) 在左邊的視窗中選中Target1然後選擇Project->Options for Target 'Target 1'
在打開的窗口中選擇Output選項欄,將Create HEX File打上鉤,並將後面選擇爲HEX-80.
3) 下面就可以創建代碼文件並編程了.具體可參看樣例程序carTestMotor.
先編譯,編譯成功後生成可執行文件,同時會創建一個以工程名命名的 target1.hex文件,我們要的就是這個文件
4) 打開stc-isp-v480.exe
a) 在MCU Type 的地方選擇STC11L02
b) 選擇剛纔生成的 target1.hex 文件
c) 查看你係統的設備管理器,選擇相應的USB轉的com端口,如果找不到可能是驅動沒裝好,可以參看上面的 電腦上需要的操作(3) 安裝驅動
d) 不需要做更改
e) 選擇Downloads/下載,單片機的電源必須要打開,然後按開關復位單片機的狀態,在提示框中就能夠看到程序連接下載成功等信息了..如果提示你需要給MCU上電,說明沒有成功,可以檢測單片機是否供電正常,串口是否有連接正常,JP1,JP2的跳針是否正確,以及開關在斷開復位後必須處於合上的狀態.
5) 注意事項:
每次重新生成.hex文件想要下載到單片機上時,必須在STC-ISP中重新選擇該文件,不然還是上次的版本.
步驟3中的波特率一般不用調整,會自動適應,有的電腦可能驅動問題,可以強制設定,一般9600-38400都可以.
樣例程序中有較詳細的註釋,應該能看懂,主要的幾個問題摘如下:
1) 電機的狀態控制,enable端都是低電平有效,即enable端爲0時,電機運轉,爲1時停止.
2) dir端,爲0時是向前,爲1時爲向後,當然這與你具體的安裝方法有關.這裏以J1連接右輪,J2連接左輪爲例,可根據自己情況調整.
3) 中斷控制.沒啥好說的,中斷頻率據實測大約爲25KHz.
以上..
(ps:還缺少那根USB線的詳細製作過程..一方面那個接頭用的那些元件我也說不清楚..另一方面..我的都全部用膠帶封起來了..不想再拆掉拍照一步步來了..)
附程序代碼:
motor.c:
timer.c:
main.c: