![]() |
|
Tài trợ cho PIC Vietnam |
Cơ bản về vi điều khiển và PIC Những bài hướng dẫn cơ bản nhất để làm quen với vi điều khiển PIC |
![]() |
|
Ðiều Chỉnh | Xếp Bài |
|
![]() |
#1 |
Nhập môn đệ tử
Tham gia ngày: Jul 2010
Bài gửi: 5
: |
ô hay, cái luồng này là dành cho những người mới học pic 18f.sao mấy người cứ hỏi lằng nhằng đâu đâu vậy
bác F ko lên nữa ah, đang học mà |
![]() |
![]() |
![]() |
#2 |
Nhập môn đệ tử
Tham gia ngày: Jul 2010
Bài gửi: 5
: |
em là người mới tìm hiểu về pic 18f.đang muốn các bác chỉ giùm thì các bác cứ chuyền hết sang các vấn đề đâu đâu thế
|
![]() |
![]() |
![]() |
#3 |
Nhập môn đệ tử
Tham gia ngày: Jun 2010
Bài gửi: 5
: |
mình ko hiểu dòng #fuses HSPLL,NOWDT,NOPROTECT,NOLVP,NODEBUG,PLL3,CPUDIV1,V REGEN
để lảm gì nữa |
![]() |
![]() |
![]() |
#4 |
Đệ tử 1 túi
Tham gia ngày: Apr 2009
Bài gửi: 18
: |
PLL3 là liên quan đến thạch anh cứng 12MHz để cấp 12/3=4MHz cho bộ nhân tần, CPUDIV1 - 96/2=48MHz cấp clock cho CPU. Mình xem các post của luồng này mà rút ra chứ xem datasheet thì lờ mờ lắm - tiếng Anh kém mà. Cái mạch trên mình cắm breadboard đã chạy được, song có lẽ config vẫn chưa chuẩn.
thay đổi nội dung bởi: bravesoldier, 23-08-2010 lúc 10:00 AM. |
![]() |
![]() |
![]() |
#5 |
Đệ tử 1 túi
Tham gia ngày: Apr 2009
Bài gửi: 18
: |
Có bác nào dùng CCS-C và PIC18F4550 pha màu cho LED RGB chưa?
Em đang thử mà chật vật quá. |
![]() |
![]() |
![]() |
#6 |
Nhập môn đệ tử
Tham gia ngày: Dec 2010
Bài gửi: 9
: |
chào các bạn
có ai làm việc với dòng pic18F97j60 chưa cho mình hỏi với mình đang gặp khó khăn trong việc dùng con pic này để truyền thông với vdk khác qua modul ESUART ,ứng dụng để đo lường và dk nhiệt độ ,độ ẩm hiển thị lcd , ai có sơ đồ nguyên lý giúp mình với |
![]() |
![]() |
![]() |
#7 |
Nhập môn đệ tử
Tham gia ngày: Dec 2010
Bài gửi: 9
: |
chào các bạn
có ai làm việc với dòng pic18F97j60 chưa cho mình hỏi với mình đang gặp khó khăn trong việc dùng con pic này để truyền thông với vdk khác qua modul ESUART ,ứng dụng để đo lường và dk nhiệt độ ,độ ẩm hiển thị lcd , ai có sơ đồ nguyên lý giúp mình với |
![]() |
![]() |
![]() |
#8 |
Nhập môn đệ tử
Tham gia ngày: Dec 2010
Bài gửi: 9
: |
sao k bac nao giup em ha
|
![]() |
![]() |
![]() |
#9 |
Đệ tử 3 túi
Tham gia ngày: Jul 2008
Bài gửi: 57
: |
Apnote của Microchip cho 18F97J60 về Ethernet đủ cả, lên Microchip mà seach, Dùng 18F97J60 để làm những cái kia liệu có phải lấy máy chém ra thịt gà ko ? còn ứng dụng của bạn chỉ cần mấy em 16F low cost là đủ, vd 16F887 có ESUART
|
![]() |
![]() |
![]() |
#10 |
Nhập môn đệ tử
Tham gia ngày: Dec 2010
Bài gửi: 9
: |
nhưng thầy giáo giao đề tài la dùng con này ,, và phải giao tiếp với 2 con vdk , mà 16f887 nó chỉ có 1 eusart thui ,em mới học về pic ,mong anh chỉ giúp với
|
![]() |
![]() |
![]() |
#11 |
Nhập môn đệ tử
Tham gia ngày: Dec 2010
Bài gửi: 9
: |
mọi người có ai đã làm về cái nay giup minh voi
minh nan qua |
![]() |
![]() |
![]() |
#12 |
Đệ tử 1 túi
Tham gia ngày: Aug 2009
Bài gửi: 18
: |
Em cung tim hieu ve pic 18f4550, nhung sao gio moi nguoi khong tham gia nua vay?
|
![]() |
![]() |
![]() |
#13 |
Nhập môn đệ tử
Tham gia ngày: May 2010
Bài gửi: 6
: |
giao tiếp pic8f4550 với LCD 4x16
Chào tất cả mọi người!
Các bạn giúp mình cách đổi Port xuất dữ liệu từ thư viện LCD420.c với. hiện tại trong thư viện LCD420.C của trình biên dịch CCS complier mặc định PortB xuất dữ liệu ra LCD 4x16 . Bây giờ mình muốn thay portB bằng PortD cho phù hợp với bài toán của mình , mình đã thử nhưng không đúng. Mong mọi người giúp đỡ cảm ơn tất cả ! //////////////////////////////////////////////////////////////////////////// //// LCD420.C //// //// Driver for common 4x20 LCD modules //// //// //// //// lcd_init() Must be called before any other function. //// //// //// //// lcd_putc(c) Will display c on the next position of the LCD. //// //// The following have special meaning: //// //// \f Clear display //// //// \n Go to start of second line //// //// \b Move back one position //// //// //// //// lcd_gotoxy(x,y) Set write position on LCD (upper left is 1,1) //// //// //// //// lcd_getc(x,y) Returns character at position x,y on LCD //// //// //// //////////////////////////////////////////////////////////////////////////// //// (C) Copyright 1996,1997 Custom Computer Services //// //// This source code may only be used by licensed users of the CCS C //// //// compiler. This source code may only be distributed to other //// //// licensed users of the CCS C compiler. No other use, reproduction //// //// or distribution is permitted without written permission. //// //// Derivative programs created using this software in object code //// //// form are not restricted in any way. //// //////////////////////////////////////////////////////////////////////////// // As defined in the following structure the pin connection is as follows: // B0 enable // B1 rs // B2 rw // B4 D4 // B5 D5 // B6 D6 // B7 D7 // // LCD pins D0-D3 are not used and PIC B3 is not used. struct lcd_pin_map { // This structure is overlayed BOOLEAN enable; // on to an I/O port to gain BOOLEAN rs; // access to the LCD pins. BOOLEAN rw; // The bits are allocated from BOOLEAN unused; // low order up. ENABLE will int data : 4; // be pin B0. } lcd; #byte lcd = 6 // This puts the entire structure // on to port B (at address 6) #define lcd_type 2 // 0=5x7, 1=5x10, 2=2 lines BYTE const LCD_INIT_STRING[4] = {0x20 | (lcd_type << 2), 0xc, 1, 6}; // These bytes need to be sent to the LCD // to start it up. // The following are used for setting // the I/O port direction register. struct lcd_pin_map const LCD_WRITE = {0,0,0,0,0}; // For write mode all pins are out struct lcd_pin_map const LCD_READ = {0,0,0,0,15}; // For read mode data pins are in BYTE lcdline; BYTE lcd_read_byte() { BYTE low,high; set_tris_b(LCD_READ); lcd.rw = 1; delay_cycles(1); lcd.enable = 1; delay_cycles(1); high = lcd.data; lcd.enable = 0; delay_cycles(1); lcd.enable = 1; delay_us(1); low = lcd.data; lcd.enable = 0; set_tris_b(LCD_WRITE); return( (high<<4) | low); } void lcd_send_nibble( BYTE n ) { lcd.data = n; delay_cycles(1); lcd.enable = 1; delay_us(2); lcd.enable = 0; } void lcd_send_byte( BYTE address, BYTE n ) { lcd.rs = 0; while ( bit_test(lcd_read_byte(),7) ) ; lcd.rs = address; delay_cycles(1); lcd.rw = 0; delay_cycles(1); lcd.enable = 0; lcd_send_nibble(n >> 4); lcd_send_nibble(n & 0xf); } void lcd_init() { BYTE i; set_tris_b(LCD_WRITE); lcd.rs = 0; lcd.rw = 0; lcd.enable = 0; delay_ms(15); for(i=1;i<=3;++i) { lcd_send_nibble(3); delay_ms(5); } lcd_send_nibble(2); for(i=0;i<=3;++i) lcd_send_byte(0, LCD_INIT_STRING[i]); } void lcd_gotoxy( BYTE x, BYTE y) { BYTE address; switch(y) { case 1 : address=0x80;break; case 2 : address=0xc0;break; case 3 : address=0x90;break; case 4 : address=0xd0;break; } address+=x-1; lcd_send_byte(0,address); } void lcd_putc( char c) { switch (c) { case '\f' : lcd_send_byte(0,1); lcdline=1; delay_ms(2); break; case '\n' : lcd_gotoxy(1,++lcdline); break; case '\b' : lcd_send_byte(0,0x10); break; default : lcd_send_byte(1,c); break; } } char lcd_getc( BYTE x, BYTE y) { char value; lcd_gotoxy(x,y); lcd.rs=1; value = lcd_read_byte(); lcd.rs=0; return(value); } |
![]() |
![]() |
![]() |
#14 | |
Đệ tử 3 túi
|
Trích:
Trong 2 file đó tìm đến đoạn nói về OSC (khoảng gần cuối) và so sánh các thanh ghi, kết quả như sau FSCM -> FCMEN BOR -> BOREN STVR -> STVREN INTIO2 -> INTIO67 Sau đó tìm đoạn CONFIG, thì thấy giá trị khác nhau ở đây thôi _BOR_ON_2L EQU H'FF' ; Brown-out Reset enabled _BOR_OFF_2L EQU H'FD' ; Brown-out Reset disabled _BOREN_OFF_2L EQU H'F9' ; Brown-out Reset disabled in hardware and software _BOREN_ON_2L EQU H'FB' ; Brown-out Reset enabled and controlled by software Các thanh ghi kia tên thì khác nhưng giá trị ON, OFF giống nhau Chúc bạn thành công. Bạn nên đưa code lên thì dễ kiểm tra hơn nha ![]() thay đổi nội dung bởi: caremlanh, 16-04-2011 lúc 04:28 PM. |
|
![]() |
![]() |
![]() |
#15 |
Đệ tử 3 túi
|
gửi project lun đi bạn
![]() bạn để code ở trên trong thẻ Code:
[ code]...[ /code] |
![]() |
![]() |
![]() |
|
|
![]() |
||||
Ðề tài | Người gửi | Chuyên mục | Trả lời | Bài mới |
Pic18 voi USB | Khanhnghia | Cơ bản về vi điều khiển và PIC | 2 | 24-02-2009 11:41 PM |
interrupt in pic18 | littlephoc | Cơ bản về vi điều khiển và PIC | 9 | 18-04-2007 01:27 AM |
Bac falleaf co the viet tourial Pic bang C duoc ko | namezero | Các ngôn ngữ lập trình khác (CCS C, HT PIC,...) | 2 | 21-10-2005 02:39 PM |