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 Cần tư vấn cải thiện chất âm thanh loa SoNy.bởi mèomướpDạ loa tép bé xíu như ngón chân cái thôi ạ. Thiếu gì chỗ để đâu. Quan trọng là gắn thêm nó loa nghe ok hay ko thôi ạ...
-
Channel: Điện thanh
hôm nay, 11:44 -
-
Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.bởi viettinhNó không phải cái loa rời. Chả nhẽ đèo thêm 2 con loa tép ngoài thì kỳ lắm....
-
Channel: Điện thanh
hôm nay, 09:45 -
-
Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.bởi mèomướpDạ chú mua thêm loa tép nối tiếp qua con tụ rồi mắc vào cùng loa trung là được ạ...
-
Channel: Điện thanh
Hôm qua, 19:53 -
-
Trả lời cho Tìm datasheet linh kiện điện tử.bởi mèomướpDạ cháu hỏi bạn cháu thì bạn ấy trả lời như thế này ạ. Cháu cũng hông bít có đúng hông nữa ạ
Linh kiện điện tử với mã "943BA" và "W58BAL" là một loại cầu chì tự động (circuit breaker) do TE Connectivity sản...-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 19:50 -
-
bởi viettinhChuyện là mình mới đập hộp con loa kéo Sony SRS-XV900. Do khu vực mình k có sẵn hàng để trải nghiệm thực tế nên chỉ tham khảo các kênh revew online.
Mua về sử dụng thì thấy hơi buồn về chất âm, Mở max k to bằng cái loa kéo china, bass...-
Channel: Điện thanh
Hôm qua, 17:18 -
-
Trả lời cho Tìm datasheet linh kiện điện tử.bởi yeurap7em tra google cũng ko có...
-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 16:37 -
-
Trả lời cho Trình điều khiển bước rời rạcbởi mèomướpDạ nếu chú đã viết được chương trình cho vđk thì thêm 1 chương trình con chạy động cơ bước chỉ đơn giản là copy phát. Về phần cứng thì vài con cách ly quang, vài con mosfet thôi ạ. thực sự là dễ dàng như bài tập bình thường của sinh viên thôi ạ...
-
Channel: Máy công cụ
06-01-2025, 12:55 -
-
Trả lời cho Sửa bộ nguồn DC 60V 45Abởi Minhdai95vâng mình cảm ơn mn đã góp ý
-
Channel: Điện tử công suất
06-01-2025, 11:30 -
-
bởi tom22Xin chào
Tôi có một dự án trong đó một động cơ bước tích hợp được điều khiển bởi một bộ vi điều khiển.
Nhưng tôi thực sự không thích trả tiền cho trình điều khiển bước, khi tôi có một bộ vi điều khiển có khả năng thực...-
Channel: Máy công cụ
06-01-2025, 10:54 -
-
Trả lời cho Sửa bộ nguồn DC 60V 45Abởi mèomướpDạ chú chủ thớt có thời gian và đam mê thì cứ từ từ ngâm cứu đi ạ đừng nghe chú Chú bq... dọa mà sợ ạ. Cái nguồn nhìn cũng lởm có khi hông bằng cái máy hàn tàu của chị hàng xóm hôm nọ tháo ra sửa với chú thợ thông ống nước suốt đêm mới xong. Chú ý an toàn xíu là được ạ...
-
Channel: Điện tử công suất
05-01-2025, 15:40 -
Comment