Nguyên văn bởi tranvanan
Xem bài viết
Thông báo
Collapse
No announcement yet.
Cách giao tiếp DS1877 và PIC6F877A
Collapse
X
-
^^ DD3N điên nặng gấp 3 lần người thường ^^
-
@008: ok, theo ý bạn vậy, mình đang viết C với Mikro C. đã làm thử mấy bài cơ bảng với led đơn rồi,
còn lcd thì mới viết hôm qua nhưng chỉ hiển thị được tên mình lên lcd thôi, chứ chưa có gì đặc biệt hết, mình giao tiếp lcd theo dạng 4 bit, mình sẽ làm thử với ds1307.
có gì bạn giúp mình với nhé, Nhưng mình sợ để không con ds12c887,,,nó hết pin thì toi, mình không có ở VN nên ,,linh kiện mua khó lắm,,hic, cảm ơn bạn.mình sẽ còn nhờ vả bạn nhiều đó,
Comment
-
Nguyên văn bởi tranvanan Xem bài viết@008: ok, theo ý bạn vậy, mình đang viết C với Mikro C. đã làm thử mấy bài cơ bảng với led đơn rồi,
còn lcd thì mới viết hôm qua nhưng chỉ hiển thị được tên mình lên lcd thôi, chứ chưa có gì đặc biệt hết, mình giao tiếp lcd theo dạng 4 bit, mình sẽ làm thử với ds1307.
có gì bạn giúp mình với nhé, Nhưng mình sợ để không con ds12c887,,,nó hết pin thì toi, mình không có ở VN nên ,,linh kiện mua khó lắm,,hic, cảm ơn bạn.mình sẽ còn nhờ vả bạn nhiều đó,^^ DD3N điên nặng gấp 3 lần người thường ^^
Comment
-
@008: mình đang ở Nhật Bản, mình thì đi làm suốt nên không có nhiều thời gian để làm mạch, nhưng mà thích quá nên gần đây mới đạt mua ở Vn mang sang để làm,,để mình làm thử, có gì ko biết thì nhờ bạn giúp vậy,
À ,còn cái này ,,,bạn có thể nói cho mình biết cách thức xử lý nhiệt độ đo được từ ds1820 sau khi dung lệnh 44h(lệnh convert) để hiển thị lên led7 đoạn được không.Cái này ngoài luồng nhưng mong 008 giúp đở.hihi
Comment
-
Nguyên văn bởi tranvanan Xem bài viết@008: mình đang ở Nhật Bản, mình thì đi làm suốt nên không có nhiều thời gian để làm mạch, nhưng mà thích quá nên gần đây mới đạt mua ở Vn mang sang để làm,,để mình làm thử, có gì ko biết thì nhờ bạn giúp vậy,
À ,còn cái này ,,,bạn có thể nói cho mình biết cách thức xử lý nhiệt độ đo được từ ds1820 sau khi dung lệnh 44h(lệnh convert) để hiển thị lên led7 đoạn được không.Cái này ngoài luồng nhưng mong 008 giúp đở.hihi^^ DD3N điên nặng gấp 3 lần người thường ^^
Comment
-
Nguyên văn bởi 008 Xem bài viếthihi vấn đề mình giải quyết rùi, Thực tế là làm theo turial của bên picvn ghi la thanh ghi A có địa chỉ 10h còn B có địa chỉ 11h. Nhưng coi kĩ lại datasheet phát hiện ra thanh ghi A la 0Ah, thanh ghi B la 0Bh. Bạn coi thử lại coi, chỉ cần set 010 cho đúng là nó chạy rồi không cần làm gì khác hết.
Chúc may mắn! Tết rùi mà vẫn quyết chiến nhỉ
Comment
-
Bác tò mò sớm làm gì, bệnh đó em không giải thích được, nhưng phải làm thế mới chạy, bác cứ tìm hiểu, rùi tự tìm ra mới zui, chứ em nói ngay mất hứng , không ra thì em sửa cho.
Bác dùng con PIC nào cũng được, em làm với 877A chạy tốt, không sao cả.
chào bạn ! Mình đang làm project sử dụng 2 kit pic16F887 kết nối dùng SPI protocol, chế độ Master- slave để 1 kít Đo nhiệt Độ rôi gửi cho kit còn lại hiện thi lên LCD.
pro giúp mình các bước làm với !!!!! nêu có gì gửi cho mình xin liên hệ. mong pro giúp cho.
mail của minh là :xuananitiu@gmail.com
Comment
-
Nguyên văn bởi phamthaihoa Xem bài viết
Giao tiếp giữa DS12887 với PIC bị một bệnh rất mất dạy, mà không bị khi làm với 8051. Bác viết code lên em sửa cho, chứ code nguồn của em thì em không share
Mà bác nào dám đập thử con DS12887 ra xem trong đó có gì chưa ?
có phải bệnh mất dạy là chuyển port từ output sang input khiến port bị dis phải ko bác?
bác chỉ em xử lý giúp ạ, zalo em 0382361069.
đây đoạn code của em:
int DATA_W,ADDRESS_W,DATA_R ;
#define AS RD0_bit
#define RW RD1_bit
#define DS RD2_bit
#define CS RD3_bit
#define RE_SET RD4_bit
#define DATAPORT PORTB
void read_12C887(void);//khai bao chuong trinh con
void write_12C887(void);//khai bao chuong trinh con
//**********write_12C887***************
void write_12C887(unsigned char address_w, unsigned char data_write)
{
TRISB=0X00;
AS=0;
DS=1;
RW=1;
;
AS=1;
CS=0;
DATAPORT=ADDRESS_W;
;
AS=0;
;
RW=0;
DATAPORT=data_write;
;
RW=1;
CS=1;
AS=1;
}
void read_12C887(char ADDRESS_R, char DATA_READ)
{
STATUS.B5=1;
TRISB=0X00;
STATUS.B5=0;
DATAPORT=ADDRESS_R;
DS=1;
RW=1;
;
AS=1;
;
AS=0;
;
CS=0;
;
DS=0;
;
STATUS.B5=1;
TRISB=0xff;
STATUS.B5=0;
DATA_READ=DATAPORT;
DS=1;
CS=1;
AS=1;
delay_ms(50);
}
void disTime()
{
ByteToStrWithZeros(gio,giotxt);
ByteToStrWithZeros(phut,phuttxt);
ByteToStrWithZeros(giay,giaytxt);
Dtime[0] = giotxt[1];
Dtime[1] = giotxt[2] ;
Dtime[3] = phuttxt[1];
Dtime[4] = phuttxt[2];
Dtime[6] = giaytxt[1];
Dtime[7] = giaytxt[2];
}
void setTime(char sgio,char sphut,char sgiay)
{
write_12C887(0x0A,0x2F);
write_12C887(0x0B,0xDE);
write_12C887(0x04,sgio);
gio = sgio;
write_12C887(0x02,sphut);
phut = sphut;
write_12C887(0x00,sgiay);
giay = sgiay;
write_12C887(0x0B,0x5E);
}
void main(void)
{
ANSEL = 0; // Configure AN pins as digital I/O
ANSELH = 0;
C1ON_bit = 0; // Disable comparators
C2ON_bit = 0;
RCIE_bit = 1; // enable interrupt on UART1 receive
TXIE_bit = 0; // disable interrupt on UART1 transmit
PEIE_bit = 1; // enable peripheral interrupts
GIE_bit = 1; // cho phep ngat
// config timer 0
/*PSA_bit = 0;// chon bo chia truoc cho timer 0
PS2_bit = 0;
PS1_bit = 1;
PS0_bit = 0;// chon bo chia truoc 8
T0CS_bit = 0;// chon nguon xung clock noi
T0IE_bit = 1; // cho phep ngat timer 0
T0IF_bit = 0; // ghi gia tri co ngat = 0
TMR0 = 56;*/
TRISE = 0;
PORTE = 0;
TRISB=0x00;
TRISD = 0X00;
ADCON1=0x06;
RE_SET=1;
CS =1;
delay_ms(500);
write_12C887(0x0A,0x2F); //b'00101111' dua gia tri vao thanh ghi "register A" BIT 5=1 THOI GIAN THUC BIT 0...3=1 TAO F=2HZ TAI CHAN SQW
write_12C887(0x0B, 0x5A); //'01011110' ; dua gia tri vao thanh ghi "register B" //BIT 3=1 CHO PHEP TAO SONG VUONG TAI CHAN SQW // BIT 1=1 dang du lieu 24 gio //BIT 2=1 dang du lieu Binary
I2C1_Init(100000); // initialize I2C communication
LCD_Begin(0x7E); // initialize LCD module with I2C address = 0x4E
LCD_cmd_(LCD_CURSOR_OFF);
LCD_Goto(1, 1);
LCD_Print("HELLO");
delay_ms(1000);
LCD_cmd_(LCD_CLEAR);
delay_ms(100);
setTime(23,59,58);
disTime();
LCD_Goto(1, 1);
LCD_Print(Dtime);
delay_ms(1000);
LCD_cmd_(LCD_CLEAR);
while (1)
{
read_12C887(0X0A,DATA_R);
if (((DATA_R>>7)&0x01)==1)//
//while(DATA_R,7==1)
{
read_12C887(0X0A,DATA_R);
}
if (((DATA_R>>7)&0x01)==0)
{
read_12C887(0X00,GIAY);
read_12C887(0X02,PHUT);
read_12C887(0X04,GIO);
}
disTime();
LCD_Goto(1, 1);
LCD_Print(Dtime);
delay_ms(50);
}
}
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Giải thích nôm na từ "tụ bay"bởi chinhnguyen9Đa tạ lời cảm ơn của bạn. Mến!
-
Channel: Hướng dẫn sử dụng diễn đàn
hôm nay, 05:06 -
-
Trả lời cho Xin tư vấn về mạch cầu H cho inverter 1000wbởi thebinhzChắc là không được đâu bạn ơi
Quán ăn Vĩnh Yên-
Channel: Điện tử công suất
Hôm qua, 21:56 -
-
Trả lời cho Giải thích nôm na từ "tụ bay"bởi thebinhzCảm ơn bạn nhiều nha
Nhà hàng Vĩnh Yên-
Channel: Hướng dẫn sử dụng diễn đàn
Hôm qua, 21:50 -
-
bởi chinhnguyen9Sản phẩm này ghi version 2.0 01-2024 MADE IN CHINA nhưng không thấy thương hiệu hình 1
Do 8 chân G của mosfet được đấu song song thành 2 nhóm nên có cùng biên độ xung kích. Nhưng Q1 và Q2 nằm cuối dãy B3;B4 ờ mức nguồn cao nhất do chân Q có điện áp...-
Channel: Hướng dẫn sử dụng diễn đàn
Hôm qua, 08:29 -
-
bởi chinhnguyen9
Xem hình có phần thuyết minh bên trong tiện việc quan sát và đọc thuyết minh. Khi G1 high dòng điện chạy theo các đường màu đen khi G2 high dòng điện chạy theo các đường màu nâu đỏ.
Bổ sung một tính chất củng cố cho tên gọi tụ...-
Channel: Hướng dẫn sử dụng diễn đàn
24-04-2024, 01:15 -
-
Trả lời cho CODE/ROM-dvb-vcd-dvd-mindikaraoke- Máy nạp Rombởi ThaPhong20Mình cần giúp đõ đầu California MIDI-800K
Ngày trc có nghe tin đồn đầu này có thể chạy đĩa DH-3600 nên mua Vol 26 về chạy thử và nó báo góc trái dòng code rồi tự thay nền DH-3600S luôn. Sau khi tự thay nền thì nó tiếp tục báo dòng Code...-
Channel: Thiết bị thu phát MEDIA dân dụng
23-04-2024, 19:24 -
-
Trả lời cho Xin tư vấn về mạch cầu H cho inverter 1000wbởi N.T.HIRF460 có chịu được tải 1000W công suất thực không ạ....
-
Channel: Điện tử công suất
23-04-2024, 16:05 -
-
bởi chinhnguyen9Trước đây có thế hệ mạch cân bằng chủ động hoạt động theo nguyên lý so áp giữa 2 cell (hoặc 2 chuỗi) liền kề nếu điện áp này >100mV mach cận bằng sẽ được kích hoạt và sẽ dừng hoạt động cân bằng khi độ chênh điện áp giảm xuống còn 30 mV
Hiện nay có dòng sản phẩm mới gọi là...-
Channel: Hướng dẫn sử dụng diễn đàn
23-04-2024, 07:26 -
-
Trả lời cho Hỏi về mạch công suất bị dò DCbởi vandoanĐiện áp ở A và C được ghim bởi Transistor Q8. chuyện áp ra loa + hay - là do các trans khác bị chập chập bên nào thì thay bên đó.
-
Channel: Điện thanh
20-04-2024, 12:00 -
-
bởi jigokushoujoCó anh chị nào có thể cho em 1 mạch chống ngược cực, chập mạch, khi bị chạm mạch hay ngược cực thì nó sẽ tự động ngắt nguồn,khi không còn chạm thì nó sẽ đóng nguồn lại bình thường. Em có dùng nguồn 12V 75A từ ắc quy . Em cần chụi...
-
Channel: Điện tử dành cho người mới bắt đầu
18-04-2024, 18:24 -
Comment