![]() |
|
Tài trợ cho PIC Vietnam |
PIC - Thiết kế và Ứng dụng Ý tưởng cho các sản phẩm sử dụng PIC/dsPIC và các sản phẩm của Microchip |
|
Ðiều Chỉnh | Xếp Bài |
![]() |
#3 |
Đệ tử 2 túi
Tham gia ngày: Jan 2009
Bài gửi: 29
: |
anh ơi ! em đã thử mấy cái hàm đó và thấy nó hiện đúng ! khi chưa gửi kí tự từ trên visual . ví dụ em khai báo :
char str[]="12"; int16 y; y=atol(str); hien(y); thì nó hiện đúng . Nhưng khi em gửi từ trên máy tính xuống thì nó lại hiện sai . chương trình của em như sau : Code:
#include <16f877a.h> #include <def_877a.h> #include <ctype.h> #fuses HS,NOLVP,NOWDT,PUT #use delay (clock=4000000) // defind crystal = 4MHz #use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7,bits=8) #include <string.h> #include <stdlib.h> int16 MAP[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; int16 t[2]={0x01,0x02}; void hien(int16 x) { int8 i; int8 a[2]={0}; a[0]=x%10; a[1]=x/10; for(i=0;i<2;i++) { porta=t[i]; portd=MAP[(a[i])]; delay_ms(2); } } void main() { char k[]="12"; int16 y; trisd=0x00; trisa=0x00; porta=0x00; portd=0x00; while(true) { if(kbhit()) { gets(k); puts(k); y=atol(k); } hien(y); } } thay đổi nội dung bởi: namqn, 19-03-2009 lúc 03:42 PM. Lý do: định dạng code |
![]() |
![]() |
|
|