PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   Các ngôn ngữ lập trình khác (CCS C, HT PIC,...) (http://www.picvietnam.com/forum/forumdisplay.php?f=12)
-   -   Học lập trình vi điều khiển pic với Mikroc qua các projects (http://www.picvietnam.com/forum/showthread.php?t=31124)

1041002 02-03-2014 02:15 PM

Trích:

Nguyên văn bởi nhu.ta532 (Post 82128)
sao không thấy ví dụ nào nhỉ ?

Bạn xem ví dụ tại đây nè: http://www.mikroe.com/chapters/view/...er-4-examples/

Hoặc bạn có thể tham khảo nhiều ví dụ về lập trình Pic bằng ngôn ngữ mikroc tại blog của mình: http://dientudieukhien.net

1041002 02-03-2014 02:20 PM

Trích:

Nguyên văn bởi luffy_1102 (Post 81059)
Link phần mềm bi die rồi bạn

Link còn tốt mà bạn: http://www.dientudieukhien.net/2015/...c-pro-for-pic/

1041002 02-03-2014 02:24 PM

Bạn nè, link tải vẫn ok, có lẽ bạn không biết tải tài liệu cho link rút gọn dạng adf.ly rồi. Bạn tìm hiểu cách tải trên google nha, vì hiện nay link tải dạng này nhiều lắm! thanks.

1041002 07-03-2014 11:24 PM

Project về TMR0 overflow
 
2 Attachment(s)
Hình ảnh của project:
|| Tải project tại đây (ISIS+code): http://dientublog.blogspot.com/2014/...-overflow.html

1041002 23-03-2014 08:47 AM

Using EEPROM memory with pic 16f887
 
* Ở ví dụ này, các bạn sẽ biết cách ghi giá trị từ PORTB vào địa chỉ EEPROM và xuất giá trị đó ra PORTD.
Cmu: 16f887

Video: xem theo link dưới
https://www.youtube.com/watch?v=1LjFmcgdXuU


|| Tải project tại đây :http://dientublog.blogspot.com/2014/...ic-16f887.html

1041002 01-04-2014 03:25 PM

pic 16f887 base ds1820 digital thermometer
 
* Project: dùng vi điều khiển pic16f887 lấy tín hiệu từ cảm biến nhiệt ds1820, xử lí, xuất kết quả ra màng hình LCD.

* Ảnh của project:
http://2.bp.blogspot.com/-UMDXp6hjRM...887_mikroc.jpg

* Video:
(Không biết cách chèn video)


|| Tải project link sau (ISIS + Mikroc source):
http://dientublog.blogspot.com/2014/...0-digital.html

danhtq 01-04-2014 05:18 PM

[Help]Ngắt ngoài Interrup !!!
 
1 Attachment(s)
Em đang làm một mạch điều khiển tốc độ động cơ dùng pic16f887
nhưng em không biết ngắt ngoài để đếm xung và tính vận tốc như thế nào. mong anh chỉ giáo em với. (em dùng mikroC.)
cảm ơn anh nhiều !!!

1041002 04-07-2014 12:29 AM

Trích:

Nguyên văn bởi danhtq (Post 84272)
Em đang làm một mạch điều khiển tốc độ động cơ dùng pic16f887
nhưng em không biết ngắt ngoài để đếm xung và tính vận tốc như thế nào. mong anh chỉ giáo em với. (em dùng mikroC.)
cảm ơn anh nhiều !!!

Bạn tham khảo project đếm xung để phát triển nhé:
http://www.dientudieukhien.net/wp-co...es-768x427.jpg

Xem tại đây

1041002 04-07-2014 12:45 AM

Điều khiển motor dc bằng cách điều khiển độ rộng xung PWM
 
2 Attachment(s)
Sau đây là một project điều khiển tốc độ motor dc bằng cách điều chế độ rộng xung.
CMU: pic 16f877a
Ngôn ngữ lập trình: mikroc Pro for Pic ver 6.4
Một số hình ảnh của project:

Sơ đồ nguyên lý: Xem trong ảnh


Mô phỏng bằng Protues: xem trong ảnh

|| Tải toàn bộ project và mô phỏng theo link sau:
http://dientublog.blogspot.com/2014/...g-ieu-che.html

1041002 28-10-2014 09:54 AM

Lập Trình Hiển Thị LCD 4bit Trên Vi Điều Khiển 8051
 
Chào các bạn, trong các bài trước mình chia sẽ các project cho vi điều khiển pic. Hôm nay, mình chia sẽ cùng các bạn project cho 8051, ở đây cũng lập trình bằng ngôn ngữ Mikroc, trình biên dịch Mikroc for 8051.

Sơ đồ nguyên lý của project như sau:
http://2.bp.blogspot.com/-CCAWDAX6s4...sch%5B1%5D.jpg

Ở đây mình không giải thích nhiều, do sơ đồ nguyên lý rất đơn giản, trong code đã có các phần giải thích cho các dòng lệnh.

CODE CHƯƠNG TRÌNH:

/*Share by dientudieukhien.net
MikroC Pro for Pic*/
// Lcd module connections
sbit LCD_RS at P2_0_bit;
sbit LCD_EN at P2_1_bit;

sbit LCD_D4 at P2_2_bit;
sbit LCD_D5 at P2_3_bit;
sbit LCD_D6 at P2_4_bit;
sbit LCD_D7 at P2_5_bit;
// End Lcd module connections

char txt1[] = "Embedded";
char txt2[] = "Projects";
char txt3[] = "Lcd 4 bit";
char txt4[] = "Tutorial";

char i; // Loop variable

void Move_Delay() { // Function used for text moving
Delay_ms(500); // You can change the moving speed here
}

void main(){

Lcd_Init(); // Initialize Lcd

Lcd_Cmd(_LCD_CLEAR); // Clear display
Lcd_Cmd(_LCD_CURSOR_OFF); // Cursor off
Lcd_Out(1,6,txt3); // Write text in first row

Lcd_Out(2,6,txt4); // Write text in second row
Delay_ms(2000);
Lcd_Cmd(_LCD_CLEAR); // Clear display

Lcd_Out(1,1,txt1); // Write text in first row
Lcd_Out(2,5,txt2); // Write text in second row

Delay_ms(2000);

// Moving text
for(i=0; i<4; i++) { // Move text to the right 4 times
Lcd_Cmd(_LCD_SHIFT_RIGHT);
Move_Delay();
}

while(1) { // Endless loop
for(i=0; i<8; i++) { // Move text to the left 7 times
Lcd_Cmd(_LCD_SHIFT_LEFT);
Move_Delay();
}

for(i=0; i<8; i++) { // Move text to the right 7 times
Lcd_Cmd(_LCD_SHIFT_RIGHT);
Move_Delay();
}
}
}

|| Xem nguồn bài viết gốc tại: http://www.dientudieukhien.net/2014/...hien-8051.html

1041002 02-11-2014 07:19 PM

Lập Trình Menu Và Menu Con Trên Màn Hình LCD 16x2 Tắt mở Thiết Bị
 
Lập Trình Menu Và Menu Con Trên Màn Hình LCD 16x2 Để Bật / Tắt Thiết Bị.
Hôm nay, mình chia sẽ với các bạn một project mới mang tên như tiêu đề. Ở project này mình sẽ lập trình hiển thị 4 Menu trên trang màng hình đầu tiên của LCD, khi chọn một menu thì một Submenu xuất hiện , ở đây sẽ điều khiển các tác vụ khác - ở đây mình dùng điều khiển on/off các thiết bị, sau đây là tổng quang project.
Hình ảnh:
http://2.bp.blogspot.com/-Wa_7ANFsKx...ff-device1.jpg
Giao diện trang màng hình đầu của project lcd menu for on/off device

http://3.bp.blogspot.com/-qUvyA-Huww...ff-device2.jpg
Menu 3 được mở và điều khiển on/off led 2

Video: Tại đây

||Tải code C và file mô phỏng bằng protues

trungsonkmt 07-11-2014 09:56 AM

Trích:

Nguyên văn bởi 1041002 (Post 79194)
|| Tải chương trình mikroc for pic có crack theo link sau(các chương trình không crack chỉ biên dịch đươc 2kb trở lại):
http://adf.ly/1053162/mikroc-co-crack

Bạn ơi, link download die mất dzồi, bạn update lại zùm... thank you :)

1041002 15-12-2014 06:25 PM

Trích:

Nguyên văn bởi trungsonkmt (Post 85000)
Bạn ơi, link download die mất dzồi, bạn update lại zùm... thank you :)

Bạn có thể lựa chọn bản MikrocPro for Pic 6.0: http://www.dientudieukhien.net/2014/...pic-ver-6.html

Hoặc bản MikrocPro for Pic 6.4:
http://www.dientudieukhien.net/2014/...ic-ver-64.html

Hoặc bạn có thể theo dõi các bản mới tại: http://www.dientudieukhien.net

1041002 15-12-2014 06:44 PM

Sử dụng ngắt INT ở Portb.f0
 
Sử Dụng INT External Interrupt Để Phát Hiện Cạnh Lên Ở PORTB.F0, Từ Đó Thực Hiện Chương Trình Ngắt.
Trong ví dụ ở project này ta sử dụng INT External interrupt để phát hiện sự thay đổi trạng thái ở portb.f0 (cạnh lên) từ đó thực hiện chương trình ngắt (chương trình ngắt thực hiện đảo trạng thái portc), sau đây là sơ đồ của project:
http://2.bp.blogspot.com/-t7vI53TMKo...Binterrupt.jpg
INT External interrupt

Code như sau:
Code:

/*Using an external interrupt to detect the status of RB0 to control leds in portC
  Cmu: Pic 16f877A
  Author: Minh Trung
  Site: http:dientudieukhien.net
  */
 
void interrupt(){
PORTC =~ PORTC;
delay_ms(1000);
INTF_bit = 0;    //Clear External interrupt flag
}

void main() {
TRISC=0x00; //PortC at output.
GIE_bit = 1;        //Enable Global interrupt
INTEDG_bit = 1;      //Interrupt on rising edge of INT pin
INTE_bit = 1;      // Enable External interrupt
INTF_bit = 0;      //Clear External interrupt flag
while(1){
PORTC=0x00;        // clear portc
}
}

Xem thêm PORTB interrupt trên vi điều khiển 16f887
Xem thêm project đếm xung, liên quan đến ngắt portb external

1041002 16-12-2014 07:55 AM

Binary Count With Pic 16f877a
 
Sau đây mình chia sẽ với các bạn project điều khiển đếm số nhị phân với pic 16f877a. Ở đây số nhị phân 8 bit, giá trị ban đầu được nạp vào là: 0b00000001
sau 100ms sẽ tăng lên 1 đơn vị, 0b00000010
cứ như thế 0b00000100
cho đến ....................
cuối cùng là 255 0b11111111

Các giá trị của số đếm 8bit được hiển thị trên portc của vi điều khiển pic 16f877a, sau đây là sơ đồ nguyên lý:
http://3.bp.blogspot.com/-sz69Z7ARLF...ry%2Bcount.jpg

|| Tải project tại đây


Múi giờ GMT. Hiện tại là 08:12 PM.

Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam