![]() |
!!!cho em hỏi tí về ngắt(em dùng mikroC)!!!
cho em hỏi trong chương trình dưới đây thì "ngắt" bắt đầu từ dòng nào? và dấu hiệu nhận biết !!(chỉ luôn em cách post code nha anh!!)
CHƯƠNG TRÌNH HIỂN THỊ LED7 ĐOẠN (mạch EASYPIC4) ĐẾM SỐ TỪ 0...255! Code:
unsigned short mask(unsigned short num) /*ham xuat dinh dang bit cho led7*/ |
em muốn hỏi là khi dịch chương trình thì chương trình chạy tới đâu thì chương trình "ngắt " được kích hoạt đó ạ!!!!!
|
Trích:
Để định dạng code thì bạn có thể tô đen (chọn) đoạn code cần định dạng, rồi nhấn vào nút # ở trên thanh công cụ (nút thứ ba từ bên phải sang, hàng thứ hai). Việc làm này tương đương với việc dùng các tag [code] và [ /code] để bọc phần code cần định dạng (chú ý là trong các tag không có khoảng trắng). Câu hỏi trong post tiếp theo của bạn không có ý nghĩa, vì chương trình ngắt không được kích hoạt khi dịch chương trình, nó chỉ được kích hoạt khi code được thực thi và có ngắt tương ứng xảy ra. Thân, |
Trích:
|
Trích:
Do đó, trong chương trình sẽ không có lệnh gọi chương trình con xử lý ngắt. Thân, |
Trích:
|
Trích:
Để tìm hiểu kỹ về cách xử lý ngắt của một vi điều khiển, tốt nhất là chúng ta đọc datasheet của vi điều khiển đó, chẳng hạn datasheet của PIC16F887, link để download dưới đây: http://ww1.microchip.com/downloads/e...Doc/41291E.pdf Tuy nhiên, thông tin trong datasheet được cung cấp cho những người có một kiến thức nền về vi điều khiển tương đối tốt, để dùng như tài liệu tra cứu. Với những người mới làm quen với vi điều khiển PIC, hãng Microchip có những seminar về các chuyên mục cụ thể hơn, cho mặt bằng kiến thức phổ thông hơn. Rất tiếc hiện nay tôi không thể tìm thấy các presentation về các khối chức năng của dòng Mid-range nữa. Về ngắt ngoài mà bạn đã hỏi bên luồng "PIC16F877A từ dễ đến khó", có một số chân của PIC có thể được dùng để phát hiện sự thay đổi mức logic ở các chân đó, và có thể dùng nó để nhận biết nút nhấn nối vào chân nào đó đã được nhấn. Thân, |
Trích:
!! |
#include <maina.h>
#include <stdio.h> #include <string.h> void main() { setup_adc_ports(NO_ANALOGS); setup_adc(ADC_CLOCK_DIV_2); setup_spi(SPI_SS_DISABLED); setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1); setup_timer_1(T1_DISABLED); setup_timer_2(T2_DISABLED,0,1); setup_ccp1(CCP_OFF); setup_comparator(NC_NC_NC_NC); setup_vref(FALSE); enable_interrupts(INT_RDA); enable_interrupts(GLOBAL); // TODO: USER CODE!! output_high(PIN_C2); output_high(PIN_C3); while(1) { if(input(PIN_A1)) output_low(PIN_C2); else output_high(PIN_C2); if(input_state(PIN_A0)) output_high(PIN_C3); else output_low(PIN_C3); } } Cho em hỏi giờ em muốn viết thêm uart(RS232)truyền nhận qua cổng C6/TX -C7/TX thì viết thế nào. Em đang học mò. |
Múi giờ GMT. Hiện tại là 03:53 AM. |
Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam