- Như ở bài LCD chúng ta đã biết về các tạo ra các file mức đỉnh và các file thấp. Sau đây là sơ đồ code:
- Trong sơ đồ trên file Picoblaze_pwm_control.vhd là file mức đỉnh. Các file trong nhánh ở mức thấp hơn.
- File kcpsm3.vhd là file cấu hình nên vi điều khiển picoblaze
- File picoblaze_pwm_control.ucf chứa dữ liệu liên quan tới việc gán chân.
- File pwm_ctrl.vhd chứa chương trình điều khiển pwm. File này là kết quả sau khi biên dịch từ file .psm để lập trình cho vi điều khiển picoblaze. Cách bên dịch cũng đã được được trình bày trong bài LCD.
- Các file uart_tx.vhd, uart_rx.vhd tạo ra bộ UART 16-byte FIFO buffers để kết nối với cổng com.
4.2.4. Hiện thực hóa thiết kế
4.2.4.1. Kiểm tra kết nối
Trước khi tiến hành biên dịch và nạp code chúng ta cần kiểm tra kĩ các cáp, dây nguồn đã được cấp đúng chưa:
- Jumper nguồn của bank0 đã nối chưa, có thể nối 2.5V hoặc 3.3 V. Trong các ứng dụng thông thường người ta sử dụng 3.3 V.
- Jumper chọn chế độ đã được cắm đúng chưa , ở ứng dụng này ta nên cắm M2
- Phải chắc chắn rằng dây usb,com DCE đã được kết nối.
4.2.4.2 Biên dịch và nạp code
- Tiến hành soạn thảo và biên dịch ra file pwm_ctrl.vhd từ file .psm ( phương pháp này đã được tình bày trong bài LCD)
- Tạo ra project mới và add các code mức thấp vào project (các file có màu xanh có thể download tại trang chủ của xilin.)
- Sau đó tiến hành biên dịch tạo ra file “.bit” nạp vào kit.
4.2.4.3. Điều khiển PWM qua Hyper terminal
- Bước mở Programs -> Accessories -> Communications -> HyperTerminal.
- Bước 3 cài đặt cho com:
- Ta có thể viết lệnh điều khiển cường độ sáng của các LED0 đến 3 như sau:
Cấu trúc lệnh “LDn hh” Trong đó:
n: là LED thứ mấy (vì có 8, nên n chỉ có thể là 0:7).
hh : là giá trị hex từ 00 đến FF cường độ sáng của LED tùy thược vào giá trị nạp vào này.
vd: muốn cho LED4 tắt ta gõ lệnh “LD4 00”. Muốn LED5 sáng hết mức gõ lệnh “LD5 FF”
-Tương tự ta cũng có thể điều khiển xung ra ở các jumper 9 đến 12 Cấu trúc lệnh: ”IOk hh”
k : các đầu ra của jumper 9 đến 12 nên k chỉ nhận giá trị 9 đến 12.
hh: giá trị từ 00 đến FF. Thời gian tồn tại xung ở mức cao phụ phuộc vào giá trị này. Sinh viên thay đổi giá trị này sử dụng máy hiện sóng để đo tín hiệu trên các jumper và rút ra kết luận.