Bài 5: Dùng vi điều khiển 16F887 kết nối với 2 led 7 đoạn anode chung theo phương pháp quét và viết chương trình đếm từ 00 đến 99 hiển thị trên 2 led 7 đoạn quét, thời gian trễ tuỳ chọn.
Hình 1: Sơ đồ kết nối 2 port C và D điều khiển 2 led 7 đoạn quét. Chương trình: #INCLUDE <16F887.H> #FUSES NOWDT,PUT,HS,NOPROTECT,NOLVP #USE DELAY(CLOCK=16M) CONST UNSIGNED CHAR MA7DOAN [10]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90}; UNSIGNED INT8 DEM, I; VOID HIENTHI_DELAY() { FOR (I=0;I<200;I++) { OUTPUT_C(MA7DOAN[DEM %10]); OUTPUT_HIGH(PIN_D0); DELAY_MS(1); OUTPUT_LOW(PIN_D0); OUTPUT_C(MA7DOAN[DEM /10]); OUTPUT_HIGH(PIN_D1); DELAY_MS(1); OUTPUT_LOW(PIN_D1); } } VOID MAIN() { SET_TRIS_C(0x00); SET_TRIS_D(0x00); OUTPUT_D(0X00); WHILE(TRUE) { FOR(DEM=0;DEM<100;DEM++) { HIENTHI_DELAY(); } } } Link download chương trình mô phỏng (Code và Proteus): https://drive.google.com/file/d/1TVc6fisZ6At9eUhEa1_w0OtASSUqHd58/view