PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > Các ngôn ngữ lập trình khác (CCS C, HT PIC,...)

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Bài Trong Ngày Vi điều khiển

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 10-01-2007, 11:53 PM   #1
riquelme
Đệ tử 1 túi
 
Tham gia ngày: Jan 2007
Bài gửi: 23
:
Hỏi về chương trình HTPIC của ngohaibac

Chào các bác, em đọc các bài của bác Bắc, ngay từ bài đầu tiên đã thấy không hiểu. Newbie mà, các bác thông cảm. Tất nhiên em cũng đã thử mô phỏng chương trình rồi. Đúng là chạy vẫn ổn.
1. void delayMS(unsigned int time){
while(time--){
TMR0 = 6;
T0IF = 0; // xoa co ngat
while(!T0IF);
};
}
Em muốn hỏi hàm này có phải không dùng ngắt Timer0 không? Nếu như bác Bắc nói là dùng delay, tuy nhiên theo em nghĩ delay thì phải viết là
void Delay(void)
{
unsigned int m,n;
for (n=65535;n>0;n--);
for (m=50;m>0;m--);
}
nếu muốn thay đổi theo thời gian thì thay đổi khoảng chạy của vòng lặp là được, cái này cũng giống như trong ASM mình cứ đếm dần biến đếm rồi bittest vậy. Hơn nữa, ở đây có nói kiểm tra cờ ngắt của Timer0 như vậy là đã dùng ngắt rồi? Tại sao lại không có lệnh set các bit enable của các bit như TMR0IE, PEIE, GIE.
2. Trong các thanh ghi, nếu lúc lập trình mình không gán giá trị khởi tạo cho các thanh ghi thì nó có bằng 0 không, có lẽ có cái bằng, có cái không bằng, nhưng em không dám chắc.
3. Các cổng vào ra, nếu như không phải là cổng có điện trở kéo lên bên trong, thì lúc nó làm Input, giá trị của cổng luôn luôn bằng 0?
Trước hết là vậy đã, chắc chắn còn nhiều cái khác em chưa hiểu, nhưng bài dài quá sợ mọi người lười đọc.
Dạo này em đang định học cấp tốc HTPIC nên mong mọi người giải đáp sớm.
riquelme vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-01-2007, 12:18 AM   #2
ngohaibac
Đệ tử 9 túi
 
ngohaibac's Avatar
 
Tham gia ngày: Oct 2005
Nơi Cư Ngụ: BKHN
Bài gửi: 231
:
Send a message via Yahoo to ngohaibac
Trích:
Nguyên văn bởi riquelme View Post
1. void delayMS(unsigned int time){
while(time--){
TMR0 = 6;
T0IF = 0; // xoa co ngat
while(!T0IF);
};
}
Em muốn hỏi hàm này có phải không dùng ngắt Timer0 không?
Hàm này không phải là dùng ngắt. Timer0 luôn tự chạy khi bắt đầu cho IC chạy. Trong mỗi vòng lặp, đặt lại giá trị đầu cho Timer0, rùi xoá cờ ngắt, chờ khi nào có cờ ngắt xảy ra (tức là khi Timer0 tràn , TMR0 đến từ 0xFF xuống 0x00 -> giống 8051).

Timer1, Timer2 được coi như thiết bị ngoại vi (modul ngoài) nên nếu muốn cho chạy thì phải set bit cho nó chạy. (xem trong datasheet).

Timer0 luôn tự chạy.

Trích:
Nếu như bác Bắc nói là dùng delay, tuy nhiên theo em nghĩ delay thì phải viết là
void Delay(void)
{
unsigned int m,n;
for (n=65535;n>0;n--);
for (m=50;m>0;m--);
}
Sao bạn lại nghĩ là phải viết thế? Bạn hiểu gì về Delay ? Delay chính là khoảng thời gian lãng phí mà CPU chẳng làm gì cả, chỉ làm các việc linh tinh như chờ cờ ngắt set lên, chờ để tăng các biến như bạn.

Tại sao bạn biết hàm Delay của bạn trễ được bao nhiêu thời gian??
Trích:
Hơn nữa, ở đây có nói kiểm tra cờ ngắt của Timer0 như vậy là đã dùng ngắt rồi? Tại sao lại không có lệnh set các bit enable của các bit như TMR0IE, PEIE, GIE.
Bạn biết gì về ngắt? Mời bạn qua box "Cơ bản về vi điều khiển và ngắt" để xem về ngắt.

Dùng hay không dùng ngắt có liên quan gì đến việc can thiệp vào cờ ngắt? Trong main tự nhiên cho TOIF = 1; thì sao? Nó cũng là hàm ngắt à ?

Khi dùng hàm ngắt cho Timer0 thì không cần set bit PEIE vì Timer0 không được coi là ngoại vi. Chỉ cần set các cờ : GIE, TOIE.

Chúc bạn thành công.
ngohaibac vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-01-2007, 12:24 AM   #3
ngohaibac
Đệ tử 9 túi
 
ngohaibac's Avatar
 
Tham gia ngày: Oct 2005
Nơi Cư Ngụ: BKHN
Bài gửi: 231
:
Send a message via Yahoo to ngohaibac
Trích:
2. Trong các thanh ghi, nếu lúc lập trình mình không gán giá trị khởi tạo cho các thanh ghi thì nó có bằng 0 không, có lẽ có cái bằng, có cái không bằng, nhưng em không dám chắc.
Cái này còn tuỳ thuộc vào từng thanh ghi và trạng thái của IC trước khi reset, .. ví dụ Power On Reset,..

Bạn xem thêm trong datasheet. Phần các thanh ghi có nói rất cụ thể về các giá trị của các thanh ghi ban đầu khi IC bắt đầu hoạt động.

Chúc bạn thành công.
ngohaibac vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-01-2007, 12:28 AM   #4
ngohaibac
Đệ tử 9 túi
 
ngohaibac's Avatar
 
Tham gia ngày: Oct 2005
Nơi Cư Ngụ: BKHN
Bài gửi: 231
:
Send a message via Yahoo to ngohaibac
Trích:
3. Các cổng vào ra, nếu như không phải là cổng có điện trở kéo lên bên trong, thì lúc nó làm Input, giá trị của cổng luôn luôn bằng 0?
Các cổng IO khi set làm Input, nếu không có điện trở kéo lên bên trong thì không phải giá trị của cổng luôn = 0 (mức logic của cổng chứ nhỉ).

Mức logic của cổng khi đó sẽ bị ảnh hưởng của nhiễu bên ngoài nếu cổng không nói với thiết bị ngoài.

Khi nối với thiết bị ngoài, mức logic của cổng hoàn toàn phụ thuộc vào mức logic của chân nối với cổng đó.

Nếu mà nó luôn = 0 thì đọc được giá trị gì hả bạn?

Chúc bạn thành công.
ngohaibac vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-01-2007, 02:16 AM   #5
riquelme
Đệ tử 1 túi
 
Tham gia ngày: Jan 2007
Bài gửi: 23
:
Trích:
Nguyên văn bởi ngohaibac View Post
Hàm này không phải là dùng ngắt. Timer0 luôn tự chạy khi bắt đầu cho IC chạy. Trong mỗi vòng lặp, đặt lại giá trị đầu cho Timer0, rùi xoá cờ ngắt, chờ khi nào có cờ ngắt xảy ra (tức là khi Timer0 tràn , TMR0 đến từ 0xFF xuống 0x00 -> giống 8051).
Em hiểu ý bác là hàm ngắt chính là hàm xử lý ngắt(có từ khoá interrupt), ý của em lúc trước chỉ là nếu thanh ghi timer tràn (bit cờ được tự động set) thì gọi là ngắt thôi.
Trích:
Nguyên văn bởi ngohaibac View Post
Timer1, Timer2 được coi như thiết bị ngoại vi (modul ngoài) nên nếu muốn cho chạy thì phải set bit cho nó chạy. (xem trong datasheet).
Timer0 luôn tự chạy.
Đúng thật, lúc đọc em không kỹ, tuy nhiên, bác xem lại cho em cái, trong quyển reference manual(trang 177) thì nó vẫn phải set các bit enable cho Timer0 (T0IE) và GIE đấy thôi. Còn điều bác nói là nó không phải là môđun thì đúng thật, khổ cái, đến giờ em đọc datasheet mà vẫn không thấy, chỉ xem ví dụ mẫu thấy nó có set bit PEIE còn Timer0 thì không thấy(không hiểu bác suy luận hay là trong sách có nói), như vậy nói Timer0 luôn tự chạy không biết có đúng không?
Trích:
Nguyên văn bởi ngohaibac View Post
Sao bạn lại nghĩ là phải viết thế? Bạn hiểu gì về Delay ? Delay chính là khoảng thời gian lãng phí mà CPU chẳng làm gì cả, chỉ làm các việc linh tinh như chờ cờ ngắt set lên, chờ để tăng các biến như bạn.
Tại sao bạn biết hàm Delay của bạn trễ được bao nhiêu thời gian??
Em đọc ASM, thấy vẫn dùng hàm delay kiểu vậy mà, nó cứ đặt giá trị vào thanh ghi, giảm, rồi kiểm tra mấy cái cờ linh tinh, thì cũng giống như em giảm biến đây vậy thôi. Em hiểu đơn giản thì delay nghĩa là gây trễ, mà gây trễ thì trễ kiểu gì chẳng được. Như cách em làm ở trên cũng là 1 cách gây trễ, vậy nó là delay. Còn bác nói delay là khoảng thời gian lãng phí thì đúng, nhưng nếu viết trừ trừ linh tinh như em viết ở trên thì chắc chắn ALU (thuộc CPU) phải làm việc rồi. Đây là hàm em không viết cho tham số vào, chứ nếu cho tham số vào thì em nghĩ cố gắng tính toán ra thời gian gây trễ vẫn có thể tính được. Tất nhiên không chính xác, kiểu suy luận xem từng lệnh này thì tương đương mấy lệnh trong ASM, đại loại thế. Rồi từ đó ra 1 công thức 3 lăng nhăng nào đó. Nhưng em đang là newbie, với lại ứng dụng của em không cần tính thời gian chính xác làm gì (ứng dụng quái gì, chỉ là test chức năng)
Trích:
Nguyên văn bởi ngohaibac View Post
Bạn biết gì về ngắt? Mời bạn qua box "Cơ bản về vi điều khiển và ngắt" để xem về ngắt.
Dùng hay không dùng ngắt có liên quan gì đến việc can thiệp vào cờ ngắt? Trong main tự nhiên cho TOIF = 1; thì sao? Nó cũng là hàm ngắt à ?
Bác à, như đã nói ở trên, em không nói đây là hàm ngắt(hàm ngắt là hàm xử lý khi xảy ra ngắt-chả biết có đúng không nữa ), mà là hàm này có dung đến ngắt của Timer, nghĩa là mình đã phải dùng timer đó để tạo trễ. Em chỉ nghĩ mình phân biệt hàm ngắt dùng delay thông thường và delay dung ngắt Timer là ở chỗ không phải dùng timer và có phải dùng Timer không thôi
Trích:
Nguyên văn bởi ngohaibac View Post
Khi dùng hàm ngắt cho Timer0 thì không cần set bit PEIE vì Timer0 không được coi là ngoại vi. Chỉ cần set các cờ : GIE, TOIE.
Quên mất, cái này em nói ở trên rồi. Nhưng trong chương trình của bác em không thấy bác set các bit này.
riquelme vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-01-2007, 02:20 AM   #6
riquelme
Đệ tử 1 túi
 
Tham gia ngày: Jan 2007
Bài gửi: 23
:
Trích:
Nguyên văn bởi ngohaibac View Post
Cái này còn tuỳ thuộc vào từng thanh ghi và trạng thái của IC trước khi reset, .. ví dụ Power On Reset,..

Bạn xem thêm trong datasheet. Phần các thanh ghi có nói rất cụ thể về các giá trị của các thanh ghi ban đầu khi IC bắt đầu hoạt động.

Chúc bạn thành công.
Trong datasheet, em chỉ thấy nó nói về trạng thái của IC sau khi reset là nói về thanh ghi PORT thôi. Còn mấy thanh ghi điều khiển chả thấy nói gì cả. Em phân vân điều này là do ví như lúc mình viết ADC chẳng hạn, thì mới phát hiện ra có ADCON1 ảnh hưởng đến chuyện chọn cổng PORTA là tương tự hay số, lúc đó lại thêm khởi tạo 1 thanh ghi nghe tên chả liên quan (ADCON1) gì trong việc của mình. Đó là ví dụ thế, nhiều lúc cứ nghĩ không biết mình cần khởi tạo cái gì
riquelme vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-01-2007, 02:21 AM   #7
riquelme
Đệ tử 1 túi
 
Tham gia ngày: Jan 2007
Bài gửi: 23
:
Trích:
Nguyên văn bởi ngohaibac View Post
Các cổng IO khi set làm Input, nếu không có điện trở kéo lên bên trong thì không phải giá trị của cổng luôn = 0 (mức logic của cổng chứ nhỉ).

Mức logic của cổng khi đó sẽ bị ảnh hưởng của nhiễu bên ngoài nếu cổng không nói với thiết bị ngoài.

Khi nối với thiết bị ngoài, mức logic của cổng hoàn toàn phụ thuộc vào mức logic của chân nối với cổng đó.

Nếu mà nó luôn = 0 thì đọc được giá trị gì hả bạn?

Chúc bạn thành công.
Công nhận câu hỏi này, em đọc lại cũng thấy ngớ ngẩn, tuy nhiên có cái là: Nếu như cũng cổng đó chẳng hạn, ở chế độ input em nối vào đầu anode của LED, đầu cathode em nối đất chẳng hạn, thì như thế nào.
Cảm ơn bác đã trả lời, bác trả lời tiếp đi nhé, em còn bao nhiêu thứ.
Học cái này lăng nhăng thật, nhiều lúc đọc thấy hiểu, bắt tay vào lập trình sai ở đâu chả phát hiện ra, đó là còn chưa lắp mạch thật đấy
riquelme vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-01-2007, 11:57 AM   #8
ngohaibac
Đệ tử 9 túi
 
ngohaibac's Avatar
 
Tham gia ngày: Oct 2005
Nơi Cư Ngụ: BKHN
Bài gửi: 231
:
Send a message via Yahoo to ngohaibac
Mấy cái này sang box "PIC cơ bản " nhé. Ở đó nói hết rùi. Mình nói lại mất thời gian chẳng tích sự gì cả.

Bạn chú ý, post câu hỏi đúng box nhé.
ngohaibac vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-01-2007, 07:28 PM   #9
riquelme
Đệ tử 1 túi
 
Tham gia ngày: Jan 2007
Bài gửi: 23
:
Bó tay. Em thấy box đó chỉ nói về ASM thôi mà. Thấy ở đây có HTPIC nên mới vào hỏi. Nếu sai luồng thì bác di chuyển hộ em luôn. Mà sao bác lại nói "chẳng được tích sự gì" nhỉ, có thể bác không được nhưng em được. Bác biết thì bác trả lời luôn, có mất mấy phút đâu mà nói thế.
riquelme vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-01-2007, 10:30 PM   #10
ngohaibac
Đệ tử 9 túi
 
ngohaibac's Avatar
 
Tham gia ngày: Oct 2005
Nơi Cư Ngụ: BKHN
Bài gửi: 231
:
Send a message via Yahoo to ngohaibac
ASM hay HTPIC thì chỉ là khác nhau về trình dịch và cách viết thôi. còn kiến thức về PIC thì trong luồng này không nói nhiều.

Bạn muốn chi tiết phải sang box về ASM, các MOD ở đó phân tích hết rùi. Bạn có thể đặt câu hỏi ở đó. Mình không có ý gì với bạn cả. Mình cũng đang ôn thi nữa nên cũng hơi bận.

Chúc bạn thành công.
ngohaibac vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 12-01-2007, 01:48 AM   #11
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Trích:
Nguyên văn bởi riquelme View Post
Trong datasheet, em chỉ thấy nó nói về trạng thái của IC sau khi reset là nói về thanh ghi PORT thôi. Còn mấy thanh ghi điều khiển chả thấy nói gì cả. Em phân vân điều này là do ví như lúc mình viết ADC chẳng hạn, thì mới phát hiện ra có ADCON1 ảnh hưởng đến chuyện chọn cổng PORTA là tương tự hay số, lúc đó lại thêm khởi tạo 1 thanh ghi nghe tên chả liên quan (ADCON1) gì trong việc của mình. Đó là ví dụ thế, nhiều lúc cứ nghĩ không biết mình cần khởi tạo cái gì
Lấy ví dụ datasheet của PIC16F877A nhé, bảng 14-6 (trang 150-151) cho biết trạng thái của các thanh ghi ở các điều kiện reset khác nhau, bạn cứ đọc kỹ đi rồi hỏi tiếp nếu cần.

Việc sử dụng ngoại vi thường tuân theo một trình tự nào đó, các datasheet đều có đề cập đến trình tự này, đặc biệt nếu thứ tự của các thao tác là quan trọng.

Thân,
__________________
Biển học mênh mông, sức người có hạn.

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 12-01-2007, 01:51 AM   #12
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Trích:
Nguyên văn bởi riquelme View Post
Công nhận câu hỏi này, em đọc lại cũng thấy ngớ ngẩn, tuy nhiên có cái là: Nếu như cũng cổng đó chẳng hạn, ở chế độ input em nối vào đầu anode của LED, đầu cathode em nối đất chẳng hạn, thì như thế nào.
Cảm ơn bác đã trả lời, bác trả lời tiếp đi nhé, em còn bao nhiêu thứ.
Học cái này lăng nhăng thật, nhiều lúc đọc thấy hiểu, bắt tay vào lập trình sai ở đâu chả phát hiện ra, đó là còn chưa lắp mạch thật đấy
Nếu anode của LED chỉ nối với chân input của PIC, và không nối đi đâu cả, thì đúng như Bắc nói, ngõ vào sẽ bị ảnh hưởng bởi nhiễu.

Nếu anode của LED nối với một điện trở kéo lên (đủ để LED sáng), khi đó mức điện áp ở anode của LED (cũng chính là điện áp đưa vào ngõ vào của PIC) sẽ ở vùng cấm đối với tín hiệu logic, và một giá trị nào đó giữa 1 và 2 V đối với ngõ vào analog (bạn chưa cho biết dùng ngõ vào này dạng digital hay dạng analog!).

Thân,
__________________
Biển học mênh mông, sức người có hạn.

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 12-01-2007, 01:57 AM   #13
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Tôi nói thêm đôi chút về việc làm trễ thời gian.

Với các chip không có phần cứng dành riêng để làm trễ, chúng ta đành phải dùng một đoạn chương trình nhỏ để tiêu hao một số chu kỳ máy, như vậy tức là đã làm trễ thời gian thực hiện thao tác kế tiếp.

Với chip có phần cứng (mô-đun) dành riêng cho việc làm trễ thì chúng ta nên tận dụng thế mạnh này. Sử dụng phần cứng dành riêng để làm trễ cho phép bộ xử lý tiếp tục tính toán, và chỉ cần định kỳ kiểm tra trạng thái của bộ định thời gian để biết đã hết thời gian chờ hay chưa. Như vậy chúng ta tận dụng sức mạnh của bộ xử lý tốt hơn, và chương trình được viết ra có thể làm nhiều việc hơn trong cùng một khoảng thời gian.

Thân,
__________________
Biển học mênh mông, sức người có hạn.

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 12-01-2007, 02:27 AM   #14
riquelme
Đệ tử 1 túi
 
Tham gia ngày: Jan 2007
Bài gửi: 23
:
Như vậy thực ra có 3 cách làm trễ hả anh?
1. Dùng vòng lặp giảm dần.(Khó tính chính xác thời gian nếu viết bằng C)
2. Dùng timer, cũng xét đến việc timer ngắt nhưng không dùng hàm ngắt nên trong thời gian đó CPU vẫn phải thực hiện các phép kiểm tra này và không làm được gì khác.
3. Dùng timer, có dùng đến hàm ngắt nên trong lúc ngắt chưa xảy ra thì PIC vẫn có thể làm được việc khác.
À quên, nếu như với cách 2, thì mình cũng không cần set các bit enable ngắt vì chỉ cần set khi dùng hàm ngắt?
riquelme vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 12-01-2007, 06:07 AM   #15
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Trích:
Nguyên văn bởi riquelme View Post
Như vậy thực ra có 3 cách làm trễ hả anh?
1. Dùng vòng lặp giảm dần.(Khó tính chính xác thời gian nếu viết bằng C)
2. Dùng timer, cũng xét đến việc timer ngắt nhưng không dùng hàm ngắt nên trong thời gian đó CPU vẫn phải thực hiện các phép kiểm tra này và không làm được gì khác.
3. Dùng timer, có dùng đến hàm ngắt nên trong lúc ngắt chưa xảy ra thì PIC vẫn có thể làm được việc khác.
À quên, nếu như với cách 2, thì mình cũng không cần set các bit enable ngắt vì chỉ cần set khi dùng hàm ngắt?
Nếu phân chia như bạn thì thực ra có 4 kiểu làm trễ: dùng vòng lặp, dùng timer nhưng cứ hỏi trạng thái timer liên tục, dùng timer nhưng định kỳ hỏi trạng thái timer (như vậy có thể làm việc khác rồi quay lại kiểm tra trạng thái timer), và dùng ngắt timer (xử lý bằng chương trình xử lý ngắt).

Khi dùng timer, chỉ cần dùng if (tràn timer) thay cho while (!tràn timer) là có 2 kiểu dùng timer rồi.

Thân,
__________________
Biển học mênh mông, sức người có hạn.

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời


Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến

Similar Threads
Ðề tài Người gửi Chuyên mục Trả lời Bài mới
HTPIC - các chương trình cho PIC6F877A ngohaibac Các ngôn ngữ lập trình khác (CCS C, HT PIC,...) 65 05-04-2014 01:10 AM
Giúp đỡ về HTPIC riquelme Cơ bản về vi điều khiển và PIC 0 11-01-2007 11:56 PM


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


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam