Hướng dẫn sử dụng vi điều khiển 8bit-SG8Vi

217 453 0
Hướng dẫn sử dụng vi điều khiển 8bit-SG8Vi

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Trang chủ: www.icdrec.edu.vn E-mail: info@icdrec.edu.vn Điện thoại: (84-8).37242171 - (84-8).37242172 Email kinh doanh: sg8v1.sales@icdrec.edu.vn Email hỗ trợ: sg8v1.support@icdrec.edu.vn HƯỚNG DẪN SỬ DỤNG VI ĐIỀU KHIỂN 8-bit SG8V1 © 2014 ICDREC SG8V1 – Hướng dẫn sử dụng Thông tin cập nhật Ngày cập nhật 13/10/2014 Thông tin cập nhật Phiên Mô tả lại bit trạng thái ngắt Rev 1.0 UxRCIF ghi IF2, thuộc ngoại vi UART Bổ sung đặc tính điện, thông tin package, kết nối chân đặc biệt 29/10/2014 10/12/2014 12/12/2014 Chỉnh sửa lại mô tả tập lệnh Bổ sung công suất tiêu thụ Sửa phần mô tả lệnh SUBI © 2014 ICDREC SG8V1 – Hướng dẫn sử dụng Rev 1.1 Rev 1.2 Rev 1.3 Nội dung Nội dung Nội dung Mục lục hình Mục lục bảng 10 Danh Mục Thuật Ngữ Từ Viết Tắt 11 Giới thiệu 14 1.1 Sơ đồ chân 16 1.2 Sơ đồ khối 18 Kiến trúc pipeline 19 2.1 Các bước thực lệnh 19 2.2 Kiến trúc pipeline tầng 19 2.3 Cách tính số chu lệnh 20 Chế độ tiết kiệm lượng (IDLE Mode) 23 3.1 Mô tả 23 3.2 Thanh ghi báo trạng thái CPU - CPUSTA 25 3.3 Bộ đếm chương trình (PC) 25 3.4 Stack 25 3.4.1 Truy xuất giá trị Stack (TS: Top of Stack) 26 3.4.2 Stack Pointer (SP) 26 Reset SG8V1 29 4.1 Tổng quan Reset 29 4.2 Reset người sử dụng (chân RST ) 29 4.3 Reset chọn lập trình Flash (chân SPCS) 29 4.4 Reset stack 30 4.5 Reset Watchdog 30 Kết nối chân tín hiệu đặc biệt 31 5.1 Tụ nguồn, Cap, SPCS 31 5.2 Mạch kết nối thạch anh 32 5.3 Reset 33 Tổ chức nhớ chương trình 35 6.1 Bộ đếm chương trình 35 6.2 Stack 36 6.2.1 Truy xuất giá trị Stack (TS: Top of Stack) 36 6.2.2 Stack Pointer (SP) 37 Tổ chức nhớ liệu 38 7.1 Bộ nhớ Flash Data Memory 38 7.2 Bộ nhớ RAM 38 7.2.1 Thanh ghi chọn băng 39 7.2.2 Truy cập nhanh nhớ liệu 40 7.2.3 Thanh ghi mục đích chung 40 7.2.4 Thanh ghi chức đặc biệt 40 7.2.5 Các chế độ định địa nhớ 46 Bộ nhân 8-bit 48 Ngắt 49 9.1 Thanh ghi quản lý ngắt toàn cục (GIC) 50 9.2 Thanh ghi điều khiển ngắt theo cạnh (INTEDG) 52 9.3 Thanh ghi cho phép ngắt (IE1) 52 © 2014 ICDREC SG8V1 – Hướng dẫn sử dụng Nội dung 9.4 Thanh ghi độ ưu tiên ngắt (IP1) 53 9.5 Thanh ghi lưu cờ ngắt (IF1) 54 9.6 Thanh ghi cho phép ngắt (IE2) 56 9.7 Thanh ghi độ ưu tiên ngắt (IP2) 57 9.8 Thanh ghi lưu cờ ngắt (IF2) 58 9.9 Thanh ghi cho phép ngắt (IE3) 60 9.10 Thanh ghi độ ưu tiên ngắt (IP3) 61 9.11 Thanh ghi lưu cờ ngắt (IF3) 61 10 Cổng truy xuất liệu (General Purpose Input/Output - GPIO) 63 10.1 GPIO PortA 65 10.2 GPIO PortB 66 10.3 GPIO PortC 70 10.4 GPIO PortD 73 11 Watchdog Timer 77 12 Timer 79 12.1 Mô tả Timer 79 12.2 Ngắt Timer0 80 12.3 Bộ chia tần trước 80 12.4 Thanh ghi 81 12.4.1 WT0CON 81 12.4.2 T0REG 82 13 Timer 83 13.1 Chức Timer 83 13.1.1 Tổng quan chức định thời Timer 83 13.1.2 Các chế độ Timer1 84 13.1.3 Đọc ghi 16-bit ghi đếm Timer1 85 13.2 Khối bắt so sánh kiện 85 13.2.1 Chế độ bắt kiện 86 13.2.2 Chế độ so sánh kiện 87 13.3 Thanh ghi 87 13.3.1 T1CON 88 13.3.2 T1RH 89 13.3.3 T1RL 89 13.3.4 CCRH 89 13.3.5 CCRL 89 14 Timer Timer (Timer_x) 90 14.1 Tổng quan Timer_x 90 14.2 Hoạt động Timer_x 90 14.3 Ngắt Timer_x 91 14.4 Đọc/ghi 10-bit Timer_x 91 14.5 Thanh ghi 92 14.5.1 TxCON 92 14.5.2 TxRH 92 14.5.3 TxRL 93 14.5.4 TxPRH 93 14.5.5 TxPRL 93 15 Bộ tạo xung PWM (The Pulse Width Modulation) 94 15.1 Tổng quan PWM_x 94 15.2 Chu kỳ xung PWM_x 94 15.3 Chu kỳ nhiệm vụ 95 © 2014 ICDREC SG8V1 – Hướng dẫn sử dụng Nội dung 15.4 Cấu hình hoạt động cho khối PWM_x 96 15.5 Thanh ghi 97 15.5.1 PWMxCON 97 15.5.2 PWMxRL 97 16 Serial Peripheral Interface (SPI) 98 16.1 Giới thiệu SPI 98 16.2 Các ghi SPI 99 16.2.1 Thanh ghi điều khiển SPI - SPICON 99 16.2.2 Thanh ghi trạng thái - SPISTA 100 16.3 Hoạt động SPI 101 16.4 Các bước cấu hình SPI 103 16.4.1 Cấu hình SPI chế độ master 103 16.4.2 Cấu hình SPI chế độ slave 103 17 Inter-Integrated Circuit (I2C) 106 17.1 Thanh ghi I2C 106 17.1.1 I2CCON1 106 17.1.2 I2CCON2 108 17.1.3 I2CSTA 109 17.1.4 CNTH/ADDRH CNTL/ADDRL 112 17.1.5 I2CBUF 113 17.2 Hoạt động 114 17.3 Chế độ Master 115 17.3.1 Master Truyền 115 17.3.2 Master Nhận 118 17.3.3 Đồng clock 121 17.3.4 Phân xử 121 17.3.5 Định thời kiện Start 122 17.3.6 Định thời kiện Repeat Start 123 17.3.7 Định thời kiện Stop 124 17.3.8 Xung đột bus 124 17.4 Chế độ Slave 128 17.4.1 Định địa Slave 128 17.4.2 Mặt nạ địa 128 17.4.3 Địa 7-bit 129 17.4.4 Chế độ 10-bit địa 131 17.5 Kéo dài xung clock 132 17.6 Địa General Call 133 17.7 Dạng sóng 133 17.7.1 Dạng sóng I2C Master phát (chế độ 7-bit 10-bit địa chỉ) 134 17.7.2 Dạng sóng I2C Master nhận (chế độ 7-bit địa chỉ) 135 17.7.3 Dạng sóng I2C Slave nhận chế độ 7-bit địa 136 17.7.4 Dạng sóng I2C Slave phát chế độ 7-bit địa 137 17.7.5 Dạng sóng I2C Slave nhận chế độ 10-bit địa 138 17.7.6 Dạng sóng I2C Slave phát chế độ 10-bit địa 139 18 Ngoại vi UART 140 18.1 Tổng quan ngoại vi UART 140 18.2 Các ghi liên quan đến ngoại vi UART 140 18.2.1 Thanh ghi trạng thái ngoại vi UART thứ x (UxSTA) 141 18.2.2 Thanh ghi điều khiển UART thứ x 142 18.2.3 Thanh ghi tốc độ baud UART thứ x (UxBRL) 143 © 2014 ICDREC SG8V1 – Hướng dẫn sử dụng Nội dung 18.2.4 Thanh ghi lưu liệu truyền UART thứ x (UxTXREG) 144 18.2.5 Thanh ghi lưu liệu nhận UART thứ x (UxRXREG) 144 18.2.6 Thanh ghi cho phép ngắt thứ (IE2) 144 18.2.7 Thanh ghi thiết lập ưu tiên ngắt thứ (IP2) 145 18.2.8 Thanh ghi trạng thái ngắt thứ (IF2) 146 18.2.9 Thanh ghi cấu hình chiều liệu cho Port C (DIRC) 148 18.2.10 Thanh ghi cấu hình chiều liệu cho Port B (DIRB) 149 18.3 Bộ tạo tốc độ Baud (BRG) 150 18.3.1 Tính toán tốc độ Baud 151 18.3.2 Xung lấy mẫu xung dịch liệu bên UART 153 18.3.3 Lấy mẫu liệu 154 18.3.4 Dịch liệu 155 18.4 Bộ truyền UART 155 18.4.1 Cấu trúc truyền UART 155 18.4.2 Cấu hình sử dụng truyền ngoại vi UART 156 18.5 Bộ nhận UART 158 18.5.1 Cấu trúc nhận UART 158 18.5.2 Cấu hình sử dụng nhận ngoại vi UART 159 19 Ngoại vi ADC 162 19.1 Cấu trúc ADC 162 19.2 Các ghi liên quan đến hoạt động ADC 163 19.2.1 Thanh ghi điều khiển thứ ADC (ADCON1) 163 19.2.2 Thanh ghi điều khiển thứ ADC (ADCON2) 164 19.2.3 Thanh ghi lưu liệu ADC (ADBUF) 164 19.2.4 Thanh ghi cho phép ngắt số (IE3) 165 19.2.5 Thanh ghi ưu tiên ngắt số (IP3) 165 19.2.6 Thanh ghi trạng thái ngắt số (IF3) 165 19.3 Hoạt động ngoại vi ADC 166 19.4 Các ý sử dụng ngoại vi ADC 167 19.4.1 Nguồn xung clock cấp cho ngoại vi ADC 167 19.4.2 Các yêu cầu thông số kết nối 168 20 Bộ điều khiển truy xuất Flash 170 20.1 Thanh ghi điều khiển truy xuất Flash 170 20.1.1 Thanh ghi trọng số cao Flash Pointer (FPTH) 171 20.1.2 Thanh ghi trọng số thấp Flash Pointer (FPTH) 171 20.2 Hoạt động điều khiển truy xuất flash 171 20.2.1 Truy xuất Flash Program Memory 171 20.2.2 Truy xuất Flash Data Memory 173 21 Bộ nhớ chương trình FLASH 174 21.1 Phân vùng FLASH 174 21.2 Chế độ bảo vệ chương trình 175 22 Tập lệnh 176 22.1 Giới thiệu 176 22.2 Thanh ghi cờ phép toán 178 22.3 Tóm tắt tập lệnh 178 22.4 Hoạt động lệnh 181 23 Đặc tính vật lý điện 214 24 Thông tin package 215 © 2014 ICDREC SG8V1 – Hướng dẫn sử dụng Nội dung Mục lục hình Hình 1-1: Sơ đồ chân 16 Hình 1-2: Sơ đồ khối vi điều khiển SG8V1 18 Hình 2-1: Các bước thực lệnh 19 Hình 2-2: Hoạt động thực lệnh với kiến trúc pipeline 20 Hình 2-3: Thực lệnh với kiến trúc có pipeline 20 Hình 2-4: Thực lệnh thường với kiến trúc đường ống 20 Hình 2-5: Thực lệnh bypass với kiến trúc đường ống 21 Hình 2-6: Thực lệnh rẽ nhánh đơn chu kỳ với kiến trúc đường ống 21 Hình 2-7: Thực lệnh rẽ nhánh chu kỳ với kiến trúc đường ống 22 Hình 3-1: Mô tả clock chế độ nghỉ 23 Hình 3-2: Mô tả trường hợp CPU wake up thực tiếp tục trình trước 24 Hình 3-3: Mô tả trường hợp CPU wake up vào chương trình ngắt 24 Hình 3-4: Stack ghi liên quan 26 Hình 5-1 Các tụ điện trở kết nối chân 31 Hình 5-2 Mạch kết nối thạch anh 32 Hình 5-3 Layout cho chân thạch anh 33 Hình 5-4 Mạch kết nối đến chân RST 33 Hình 5-5: Định thời mạch reset 34 Hình 5-6 Mạch kết nối đến chân RST hạn chế nhiễu 34 Hình 5-7 Mạch reset mắc thêm diode 34 Hình 6-1: Bản đồ địa nhớ liệu 35 Hình 6-2: Stack ghi liên quan 37 Hình 7-1: Bộ nhớ Flash Data Memory 38 Hình 7-2: Cấu trúc nhớ liệu 39 Hình 7-3: Sử dụng ghi BS để chọn băng 40 Hình 10-1: Cell chuẩn IO_PAD 63 Hình 10-2: Mô tả kết nối Port 65 Hình 10-3: IO PortA 66 Hình 10-4: PortB[4] - dùng chung với Timer0 68 Hình 10-5: IO PortB[0:1] - dùng chung với UART3 68 Hình 10-6: IO PortB[2:3] - dùng chung với UART2 68 Hình 10-7: IO PortB[5:7] - dùng chung với lập trình FLASH 69 Hình10-8: IO PortC[0:1] - dùng chung với UART1 71 Hình10-9: IO PortC[2:3] - dùng chung với PWM 71 Hình10-10: IO PortC[4:5] - dùng chung với SPI 71 Hình10-11: IO PortC[6:7] - dùng chung với SPI 72 Hình 10-12: IO PortD[0:3] - dùng chung với ngắt 74 Hình 10-13: IO PortD[4:5] - dùng chung với I2C 74 Hình 10-14: IO PortD[6] - dùng chung với Capture/Compare 75 Hình 10-15: IO PortD[7] - dùng chung với Timer1 75 Hình 11-1 : Mô tả khối Watchdog Timer 77 Hình 12-1: Mô tả sơ đồ khối Timer0 80 Hình 13-1: Mô tả sơ đồ khối Timer 84 Hình 13-2: Sơ đồ khối bắt kiện 87 Hình 13-3: Sơ đồ khối so sánh kiện 87 Hình 14-1: Sơ đồ khối Timer_x (Timer Timer 3) 90 © 2014 ICDREC SG8V1 – Hướng dẫn sử dụng Nội dung Hình 15-1: Sơ đồ khối PWM_x 94 Hình 15-2: Dạng sóng PWM 96 Hình16-1: Sơ đồ khối SPI 98 Hình16-2: Sơ đồ kết nối SPI 102 Hình 16-3: Các chế độ truyền liệu SPI 102 Hình 16-4: Dạng sóng SPI slave (CKP = 0, CKE = 1) 104 Hình 16-5: Đồng tín hiệu SPI SSx 105 Hình 17-1: Kết nối thiết bị đến bus I2C 115 Hình 17-2: Khung truyền với địa 7-bit chế độ Master truyền 116 Hình 17-3: Khung truyền với địa 10-bit chế độ Master truyền 117 Hình 17-4: Khung truyền với địa 7-bit chế độ Master nhận 118 Hình 17-5: Khung truyền với địa 10-bit chế độ Master nhận 120 Hình 17-6: Đồng clock 121 Hình 17-7: Phân xử 122 Hình 17-8: Định thời trình tạo kiện Start 123 Hình 17-9: Định thời trình tạo kiện Repeat Start 124 Hình 17-10: Định thời trình tạo kiện Stop 124 Hình 17-11: Xung độ bus tạo Start (1) 125 Hình 17-12: Xung độ bus tạo Start (2) 125 Hình 17-13: Xung độ bus tạo Repeat Start (1) 126 Hình 17-14: Xung độ bus tạo Repeat Start (2) 126 Hình 17-15: Xung độ bus tạo Repeat Start (3) 126 Hình 17-16: Xung độ bus tạo Stop 126 Hình 17-17: Xung đột bus trình truyền nhận liệu 127 Hình 17-18: Địa 7-bit 129 Hình 17-19: Định địa chế độ 10 bit 131 Hình 17-20: Dạng sóng I2C Master phát 134 Hình 17-21: Dạng sóng I2C Master nhận 135 Hình 17-22: Dạng sóng I2C Slave nhận chế độ 7-bit địa 136 Hình 17-23: Dạng sóng I2C Slave phát chế độ 7-bit địa 137 Hình 17-24: Dạng sóng I2C Slave nhận chế độ 10-bit địa 138 Hình 17-25: Dạng sóng I2C Slave phát chế độ 10-bit địa 139 Hình 18-1: Các thành phần ngoại vi UART 140 Hình 18-2: Xung lấy mẫu liệu xung dịch liệu tính theo hệ số N 154 Hình 18-3: Xung lấy mẫu liệu xung dịch liệu với N = 154 Hình 18-4: Xung lấy mẫu liệu xung dịch liệu với N = 154 Hình 18-5: Lẫy mẫu liệu với N ≠ 154 Hình 18-6: Lấy mẫu liệu với N = 155 Hình 18-7: Dịch liệu 155 Hình 18-8: Minh họa cấu trúc truyền UART 156 Hình 18-9: Truyền khung liệu 158 Hình 18-10: Truyền liên tục 158 Hình 18-11: Cấu trúc UART nhận 159 Hình 18-12: UART tiếp nhận 161 Hình 19-1: Sơ đồ khối ngoại vi ADC 162 Hình 19-2: Giản đồ thời gian cho hoạt động ADC 167 Hình 19-3: Lần chuyển đổi sau bit ADON (ADCON1[7]) tích cực 167 Hình 19-4: Mô hình ngõ vào ADC 169 Hình 20-1: Quá trình truy xuất flash 172 Hình21-1: Sơ đồ kết nối nạp 174 © 2014 ICDREC SG8V1 – Hướng dẫn sử dụng Nội dung Hình 24-1: Hình chiếu đứng chip SG8V1 215 Hình 24-2: Hình chiếu cạnh chip SG8V1 215 Hình 24-3: Mặt cắt A-A 216 Hình 24-4: Mặt cắt B-B 216 © 2014 ICDREC SG8V1 – Hướng dẫn sử dụng Nội dung Mục lục bảng Bảng 1-1: Mô tả chân 17 Bảng 4-1: Điều kiện reset cho ghi đặc biệt 30 Bảng 7-1: Các ghi chức đặc biệt 42 Bảng 10-1: Mô tả chân IO_PAD 63 Bảng 10-2: Mô tả chiều 64 Bảng 10-3: Mô tả bảng nhận liệu 64 Bảng 10-4: Thanh ghi DIRA 66 Bảng 10-5: Mô tả ghi PORTA 66 Bảng 10-6: Chức PortB 69 Bảng 10-7: Thanh ghi DIRB 69 Bảng10-8: Mô tả ghi PORTB 70 Bảng 10-9: Chức PortC 72 Bảng 10-10: Thanh ghi DIRC 72 Bảng10-11: Chức PORTC 73 Bảng10-12: Chức PortD 75 Bảng 10-13: Thanh ghi DIRD 76 Bảng 10-14: Mô tả chức PORTD 76 Bảng 11-1 : Mô tả ghi WT0CON 77 Bảng 12-1: Mô tả ghi WT0CON 81 Bảng 12-2: Mô tả ghi T0REG 82 Bảng 13-1: Mô tả ghi T1CON 88 Bảng 13-2: Mô tả ghi T1RH 89 Bảng 13-3: Mô tả ghi T1RL 89 Bảng 13-4: Mô tả ghi CCRH 89 Bảng 13-5: Mô tả ghi CCRL 89 Bảng 14-1: Mô tả ghi TxCON 92 Bảng 14-2 Mô tả ghi TxRH 92 Bảng 14-3 Mô tả ghi TxRL 93 Bảng 14-4 Mô tả ghi TxPRH 93 Bảng 14-5 Mô tả ghi TxPRL 93 Bảng 15-1: Mô tả ghi PWMxCON 97 Bảng 15-2: Mô tả ghi PWMxRL 97 Bảng 16-1: Thanh ghi SPI 99 Bảng16-2: Thanh ghi điều khiển SPI- SPICON 99 Bảng 16-3: Thanh ghi trạng thái SPI- SPISTA 100 Bảng 17-1: Mô tả ghi I2CCON1 chế độ Master 106 Bảng 17-2: Mô tả ghi I2CCON1 chế độ Slave 107 Bảng 19-1 Một số giá trị cấu hình tham khảo cho xung clock ngoại vi ADC 168 Bảng 22-1: Mô tả cho trường mã lệnh 176 Bảng 22-2: Tập lệnh SG8V1 178 Bảng 23-1: Thông số vật lý điện 214 Bảng 24-1: Kích thước vật lý 215 Bảng 24-2: Kích thước vật lý 216 © 2014 ICDREC SG8V1 – Hướng dẫn sử dụng 10 Tập lệnh PUSH - Push Top of Return Stack PUSH TS = (PC) + 1, tăng trỏ Stack Đẩy giá trị (PC) + vào Stack đồng thời tăng giá trị trỏ lên đơn vị Các bit cờ ảnh hưởng: PUSH Trước lệnh: Sau lệnh: TS = 345Ah, PC = 0124h PC = 0125h, TS = 0125h, Stack [SP – 1]= 345Ah RET - Return from Subroutine RET PC = (TS) Trở từ chương trình con, địa PC cập nhật với giá trị nhận từ Stack Các bit cờ ảnh hưởng: RET Trước lệnh: Sau lệnh: PC = ?, TS = 345Ah PC = 345Ah RETA - Return Immediate value to ACC RETA k0 PC = (TS) ACC = k0 Trở từ chương trình con, địa PC cập nhật với giá trị nhận từ Stack ACC cập nhật với giá trị tức thời lệnh RETA Các bit cờ ảnh hưởng: RETA k0 © 2014 ICDREC Trước lệnh: Sau lệnh: PC = ?, TS = 345Ah, ACC = ? PC = 345Ah, ACC = k0 SG8V1 - Hướng dẫn sử dụng 203 Tập lệnh RETI - Return from Interrupt RETI PC = (TS) GIE/GIEH = PIE/GIEL = Trở từ chương trình xử lý ngắt, Stack đọc giảm địa trỏ Stack Giá trị đọc từ Stack cập nhật cho ghi đếm chương trình PC Các bit cờ ảnh hưởng: Trước lệnh: Sau lệnh: RETI PC = địa lệnh RETI PC = (TS), GIE/GIEH PIE/GIEL = RL - Rotate Left reg (no carry) RL reg, dst, bse dest[7:0] = R[6:0] || R[7] Nội dung ghi reg xoay trái bit Vị trí lưu kết phụ thuộc vào giá trị bit dst Băng lựa chọn phụ thuộc bit bse Các bit cờ ảnh hưởng: Z RL REG, 1, © 2014 ICDREC Trước lệnh: Sau lệnh: REG = 1010 1011 REG = 0101 0111 SG8V1 - Hướng dẫn sử dụng 204 Tập lệnh RLC - Rotate Left reg through Carry RLC reg, dst, bse C || dest[7:0] = R[7:0] || C Nội dung ghi reg xoay trái bit qua cờ nhớ C Vị trí lưu kết phụ thuộc vào giá trị bit dst Băng lựa chọn phụ thuộc bit bse Các bit cờ ảnh hưởng: Z, C RLC REG, 0, Trước lệnh: Sau lệnh: REG = 1110 0110, ACC = ?, C = REG = 1110 0110, ACC = 1100 1100, C = RR - Rotate Right reg (no carry) RR reg, dst, bse dest[7:0] = R[0] || R[7:1] Nội dung ghi reg xoay phải bit Vị trí lưu kết phụ thuộc vào giá trị bit dst Băng lựa chọn phụ thuộc bit bse Các bit cờ ảnh hưởng: Z RR REG, 0, © 2014 ICDREC Trước lệnh: Sau lệnh: ACC = ?, REG = 1101 0111 ACC = 1110 1011, REG = 1101 0111 SG8V1 - Hướng dẫn sử dụng 205 Tập lệnh RRC - Rotate Right reg through Carry RRC reg, dst, bse C || dest[7:0] = R[0] || C || R[7:1] Nội dung ghi reg xoay phải bit qua cờ nhớ C Vị trí lưu kết phụ thuộc vào giá trị bit dst Băng lựa chọn phụ thuộc bit bse Các bit cờ ảnh hưởng: Z, C RRC REG, 0, Trước lệnh: Sau lệnh: REG = 1110 0110, C = 0, ACC = ? REG = 1110 0110, ACC = 0111 0011, C = RST – Soft Reset RST PC =0, WDTO = 0, PWD = Reset hệ thống lại trạng thái ban đầu Sauk hi lệnh thực xong, ghi hệ thống trở trạng thái hệ thống vừa khởi động Các bit cờ ảnh hưởng: WDTO, PWD, DC, C, Z RST © 2014 ICDREC Trước lệnh: Sau lệnh: PC = ?, WDTO = ?, PWD = ? PC = 0, WDTO = 0, PWD = SG8V1 - Hướng dẫn sử dụng 206 Tập lệnh SCALL - Short Subroutine Call SCALL off11 PC = (PC) + + off11 TS = (PC) + Gọi chương trình tầm 1KB trước sau vị trí PC chương trình Lệnh hỗ trợ gọi chương trình gần với vị trí PC Giá trị off11 số có dấu Ưu điểm lệnh chu kỳ để thực Các bit cờ ảnh hưởng: SCALL off11 Trước lệnh: Sau lệnh: PC = địa lệnh SCALL, TS = ? PC = PC + + off11, TS = địa SCALL + SET - Set reg SET reg, bse R = FFh Gán tất bit ghi reg lên 1, hay nói cách khác gán FFh cho ghi reg Băng lựa chọn phụ thuộc bit bse Các bit cờ ảnh hưởng: SET REG, © 2014 ICDREC Trước lệnh: Sau lệnh: REG REG =? = FFh SG8V1 - Hướng dẫn sử dụng 207 Tập lệnh SJMP - Short Jump SJMP off11 PC = (PC) + + off11 TS = (PC) + Nhảy đến vị trí khác đoạn ngắn tầm 1KB Lệnh hỗ trợ rẽ nhánh chương trình đến vị trí gần giá trị PC Giá trị off11 số có dấu Ưu điểm lệnh chu kỳ để thực Các bit cờ ảnh hưởng: SJMP off11 Tước lệnh: Sau lệnh: PC = địa lệnh SJMP PC = PC + + off11 ST - Store ACC to reg ST reg, bse R = (ACC) Ghi giá trị ghi ACC vào ghi reg Băng lựa chọn phụ thuộc bit bse Các bit cờ ảnh hưởng: ST REG, © 2014 ICDREC Trước lệnh: Sau lệnh: REG = ?, ACC = 1Ah REG = 1Ah, ACC = 1Ah SG8V1 - Hướng dẫn sử dụng 208 Tập lệnh SUBAR - Subtract reg from ACC SUBAR reg, dst, bse dest = (ACC) - (reg) Thực phép toán trừ ghi tích lũy ACC với ghi reg Vị trí lưu kết phụ thuộc vào giá trị bit dst Băng lựa chọn phụ thuộc bit bse Các bit cờ ảnh hưởng: C, HC, Z SUBAR REG, 0, Trước lệnh: Sau lệnh: REG = 0Ah, ACC = 1Ah REG = 0Ah, ACC = 10h SUBARC - Subtract reg from ACC with Carry SUBARC reg, dst, bse dest = (ACC) - (reg) - C Thực phép toán trừ ghi tích lũy ACC với ghi reg cờ nhớ C Vị trí lưu kết phụ thuộc vào giá trị bit dst Băng lựa chọn phụ thuộc bit bse Các bit cờ ảnh hưởng: C, HC, Z SUBARC REG, 1, © 2014 ICDREC Trước lệnh: Sau lệnh: REG = 3, ACC = 2, C = REG = FE, ACC = 2, C = 1, Z = SG8V1 - Hướng dẫn sử dụng 209 Tập lệnh SUBI - Subtract ACC from Constant SUBI imm dest = imm - (ACC) Thực phép toán trừ ghi tích lũy ACC với ghi reg cờ nhớ C Vị trí lưu kết phụ thuộc vào giá trị bit dst Băng lựa chọn phụ thuộc bit bse Các bit cờ ảnh hưởng: C, HC, Z Trước lệnh: Sau lệnh: SUBI 0x02 ACC = 01h, C ACC = 01h, C =? = 0, Z = SUBRA - Subtract ACC from reg SUBRA reg, dst, bse dest = (reg) - (ACC) Thực phép toán trừ ghi reg với ghi tích lũy ACC Vị trí lưu kết phụ thuộc vào giá trị bit dst Băng lựa chọn phụ thuộc bit bse Các bit cờ ảnh hưởng: C, HC, Z SUBRA REG, 1, © 2014 ICDREC Trước lệnh: Sau lệnh: REG = 3, ACC = 2, C = ? REG = 1, ACC = 2, C = 0, Z = SG8V1 - Hướng dẫn sử dụng 210 Tập lệnh SUBRAC - Subtract ACC from r with Carry SUBRAC reg, dst, bse dest = (reg) - (ACC) - C Thực phép toán trừ ghi reg với ghi tích lũy ACC cờ nhớ C Vị trí lưu kết phụ thuộc vào giá trị bit dst Băng lựa chọn phụ thuộc bit bse Các bit cờ ảnh hưởng: C, HC, Z SUBRAC REG, 1, Trước lệnh: Sau lệnh: REG = 19h (0001 1001), ACC = 0Dh (0000 1101), C = 0, Z = ? REG = 0Ch (0000 1011), W = 0Dh (0000 1101), C = 0, Z = TBZ - Test reg, Bypass if TBZ reg, bse IF (reg = 0) bỏ qua lệnh Kiểm tra giá trị ghi reg, giá trị bỏ qua lệnh Chú ý: Lệnh tốn chu kỳ để thực lệnh theo sau lệnh lệnh chu kỳ Các bit cờ ảnh hưởng: TBZ REG, © 2014 ICDREC Trước lệnh: Sau lệnh: PC = địa lệnh TBZ If REG =0; PC = (PC) + If REG ≠ 0; PC = (PC) + SG8V1 - Hướng dẫn sử dụng 211 Tập lệnh XCHD - Exchange Digit XCHD reg, dst, bse dest = (reg) - (ACC) - C Thực phép toán trừ ghi reg với ghi tích lũy ACC cờ nhớ C Vị trí lưu kết phụ thuộc vào giá trị bit dst Băng lựa chọn phụ thuộc bit bse Các bit cờ ảnh hưởng: XCHD REG, 1, Trước lệnh: Sau lệnh: REG = 53h REG = 35h XORI - Exclusive OR Constant with ACC XORI imm ACC = (ACC) XOR imm Thực phép XOR ghi tích lũy ACC với giá trị tức thời mã lệnh Vịt rí lưu kết ghi ACC Các bit cờ ảnh hưởng: Z XORI 0xAF © 2014 ICDREC Trước lệnh: Sau lệnh: ACC = B5h ACC = 1Ah SG8V1 - Hướng dẫn sử dụng 212 Tập lệnh XORR - Exclusive OR reg with ACC XORR reg, dst, bse dest = (ACC) XOR (reg) Thực phép XOR ghi tích lũy ACC với ghi reg Vị trí lưu kết phụ thuộc vào giá trị bit dst Băng lựa chọn phụ thuộc bit bse Các bit cờ ảnh hưởng: Z XORR REG, 1, © 2014 ICDREC Trước lệnh: Sau lệnh: REG = 53h, ACC = B5h REG = E6h, ACC = B5h SG8V1 - Hướng dẫn sử dụng 213 Đặc tính vật lý điện 23 Đặc tính vật lý điện  Điện áp hoạt động: 3.0V ~ 3.6V  Nhiệt độ hoạt động: ‒40°C ~ 85°C  Dòng chiều vào tối đa: 30mA  Dòng chiều tối đa: 30mA Bảng 23-1: Thông số vật lý điện Ký hiệu VIL VIH VOL Mô tả Mức thấp điện áp vào Mức cao điện áp vào Mức thấp điện áp VOH Mức cao điện áp RPU Điện trở kéo lên chân I/O Công suất tiêu thụ chế độ Run Công suất tiêu thụ chế độ sleep Prun Psleep © 2014 ICDREC Điều kiện VCC=3.3v Thấp - Thường - Cao 0.8 Đơn vị V VCC=3.3v 2.0 - - V |IOL| = 2mA ~ 10mA VCC = 3.3V |IOH| = 2mA ~ 10mA VCC = 3.3V - - 0.4 V 2.4 - - V 40 75 190 kΩ 20 Mhz - 38.3 - mW 20 Mhz - 3.5 - mW SG8V1 - Hướng dẫn sử dụng 214 Thông tin package 24 Thông tin package D D1 36 25 37 24 A PIN IDENTIFIER A 48 E1 E 13 12 Hình 24-1: Hình chiếu đứng chip SG8V1 A A2 A1 ccc C e C SEATING PLANE b Hình 24-2: Hình chiếu cạnh chip SG8V1 Bảng 24-1: Kích thước vật lý Ký hiệu A A1 A2 b D D1 E E1 e Kích thước (mm) Nhỏ Thường —— —— 0.05 —— 1.35 1.40 0.17 0.22 9.00 BSC 7.00 BSC 9.00 BSC 7.00 BSC 0.05 BSC ccc © 2014 ICDREC Lớn 1.60 0.15 1.45 0.27 0.08 SG8V1 - Hướng dẫn sử dụng Kích thước (inch) Nhỏ Thường —— —— 0.002 —— 0.053 0.055 0.007 0.009 0.354 BSC 0.276 BSC 0.354 BSC 0.276 BSC 0.020 BSC Lớn 0.063 0.006 0.057 0.011 0.003 215 Thông tin package ϴ2 ϴ1 R1 B R2 GAGE PLANE 25 S ϴ B L ϴ3 L1 Hình 24-3: Mặt cắt A-A WITH PLATING b c c1 5 b1 BASE METAL Hình 24-4: Mặt cắt B-B Bảng 24-2: Kích thước vật lý Ký hiệu b b1 c c1 L L1 R1 R2 S ϴ ϴ1 ϴ2 ϴ3 Nhỏ 0.17 0.17 0.09 0.09 0.45 0.08 0.08 0.20 0o 0o © 2014 ICDREC Kích thước (mm) Thường 0.22 0.20 —— —— 0.60 1.00 REF —— —— —— 3.5o —— o 12 TYP 12o TYP Lớn 0.27 0.23 0.20 0.16 0.75 —— 0.20 —— 7o —— SG8V1 - Hướng dẫn sử dụng Kích thước (inch) Thường 0.009 0.008 —— —— 0.024 0.039 REF 0.003 —— 0.003 —— 0.008 —— o 3.5o —— 0o o 12 TYP 12o TYP Nhỏ 0.007 0.007 0.004 0.004 0.018 Lớn 0.011 0.009 0.008 0.006 0.030 —— 0.008 —— 7o —— 216 Thông tin package Chú ý: Được xác định bề mặt đặt chip C Kích thước D1 E1 không bao gồm nhô từ chân chip D1 E1 kích thước lớn thân chip bao gồm sai số kỹ thuật sản xuất chip Kích thước b không bao gồm nhô chân chip Phần nhô đặt bán kính nhỏ chân chip Hình dạng xác góc tối ưu Những kích thước áp dụng cho phần mặt phẳng chì 0.10mm 0.25mm từ đầu mút chì A1 định nghĩa khoảng cách từ bề mặt đặt chip đến điểm thấp thân chip Đơn vị sử dụng: MILLIMETER Tài liệu tham khảo: JEDEC MS-026 Đặc tính lớp C: ccc © 2014 ICDREC SG8V1 - Hướng dẫn sử dụng 217 ... Bypass Bỏ qua (lệnh tiếp theo) © 2014 ICDREC SG8V1 – Hướng dẫn sử dụng 13 Giới thiệu Giới thiệu SG8V1 vi điều khiển RISC 8-bit đa dụng, sử dụng cho nhiều mục đích khác Tập lệnh gồm 63 lệnh, độ... cho ADC Chân nối tụ điện SG8V1 – Hướng dẫn sử dụng 17 Giới thiệu 1.2 Sơ đồ khối Vi điều khiển SG8V1 bao gồm phần lõi vi xử lý 8-bit ngoại vi xung quanh Các ngoại vi bao gồm: IO Port (GPIO), Watchdog... 2014 ICDREC SG8V1 – Hướng dẫn sử dụng 14 Giới thiệu Ngoại vi  Watchdog Timer: 16-bit, sử dụng xung clock hệ thống  Timer0: Timer/counter 8-bit, kết hợp với 8-bit prescaler; sử dụng xung clock hệ

Ngày đăng: 08/04/2017, 08:17

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan