Em đang có ý định dùng ARM LPC2148(phillip) để điều khiển GLCD 128x64 (KS0108) nhưng chưa biết phải làm thế nào .Bác nào biết chỉ giáo giúp em ( Có code luôn thì tốt quá) . Thanks!
Thông báo
Collapse
No announcement yet.
Thảo luận về ARM LPC 2138/2148
Collapse
X
-
Mình vẫn tiếp tục làm dự án NXP đấy chứ ,nhưng mình thấy ứng dụng của mình chỉ cần con LPC2148 thôi là đủ ,loại LPC2378 nhiều chân quá vừa khó thiết kế mạch vừa khó hàn do vậy mình mới để lại cho các bạn có nhu cầu dùng .Nguyên văn bởi hbaocr Xem bài viếtBác trongnghia85 có thi NXP contest hả?Bác lấy 5 chip LPC2000 để bán sao????Sao ko để mà làm!
tiep đây là 1 chương trình
http://f1.grp.yahoofs.com/v1/EMtjSIp...g/baudcalc.zip
đây la chuong trinh tinh toán để nap gia vao cac thanh ghi control UART của LPC2000 để có tốc độ baud fu hop thiet ke
Comment
-
Chào bạn Trọng Nghĩa.Nguyên văn bởi trongnghia85 Xem bài viếtMình vẫn tiếp tục làm dự án NXP đấy chứ ,nhưng mình thấy ứng dụng của mình chỉ cần con LPC2148 thôi là đủ ,loại LPC2378 nhiều chân quá vừa khó thiết kế mạch vừa khó hàn do vậy mình mới để lại cho các bạn có nhu cầu dùng .
Công Ty NXP chúng tôi rất hoan nghênh khi bạn tham gia cuộc thi Thiết kế MCU. Đề tài "ỨNG DỤNG CÔNG NGHỆ GPS TRONG VIỆC CHẾ TẠO THIẾT BỊ ĐỊNH VỊ PHỤC VỤ TÀU THUYỀN ĐÁNH BẮT XA BỜ" được các chuyên gia của chúng tôi đánh giá rất cao. Hi vọng bạn có thể hoàn thành dự án để tranh tài với các đội trong khu vực vào tháng 9/2008. Về việc ứng dụng của bạn cảm thấy không cần thiết sử dụng LPC2378, bạn có thể liện hệ đơn vị phân phối chip để đổi lại LPC2148 (công ty Vijatech). chúng tôi hi vọng có thể giúp bạn hoàn thành sản phẩm một cách tốt nhất. Chân trọng cám ơn.Challenges are chances!
Comment
-
Mình có làm 1 hàm Delay_uS đơn giản có thể delay khá chính xác từ 100us trở lên, nếu thời gian chờ là ms thì sai số rất nhỏ, hàm này có thể xài trong các ứng dụng không cần delay cực kỳ chính xác, ví dụ như dùng cho LCD chẳng hạn. Hàm này hoạt động ở xung CCLK = 60MHz. Mình đã test thử, khi delay 5ms thì sai số là 0.00027ms.
void Delay_uS (DWORD uS);
{
DWORD i = uS * 12;
while (i--);
}
Khi muốn delay 5ms thì gọi hàm Delay_uS (5000);
Comment
-
Bác phải post câu hỏi để mọi người nghiên cứu trả lời chứ. Em cũng đang tham gia cuộc thi NXP đây, cũng gặp ko ít khó khăn. Hic, hiếm lắm mới có 1 nơi bàn luận và trao đổi như thế này.Nguyên văn bởi trongnghia85 Xem bài viếtTui thấy cái thread này buồn buồn thế nào ấy ,cái dòng này ít dùng nên khi động vào gặp rất nhiều khó khăn thế mà post bài hỏi thì chả thấy ai chả lời cả.Buồn...........!
Last edited by tuansoibk; 24-07-2008, 23:52.
Comment
-
hic,mình cũng đang Busy lắm đang đau đầu với con 2148....code viet debug bằng JLINK trên Eclipse codesourcesery toolchain tự động reset JTAG hoài ah thứ 6 này là deadline phải release cho sếp rồi!đáng nghiên cứu cái BIG BUG đó!hic các bác thông cảm!Đề tài NXP của em còn làm chưa xong nữa nè!sory các bác nhiều!mà các bác cũng phải pót bài lên share kiến thức cho anh em!
Chứ em thấy way đi quẩn lại chỉ có bác Nghĩa(trọng nghĩa --hunter_pro) hỏi!hic nếu em biết thì em trả lời!nếu không thì ngu luôn chẳng biết sao nữa!
mọi người tham ja cùng đóng góp chứ!chứ để 1 mình em pót bài thế này nhiều khi cũng chán!
Bác Nghĩa đề tài ứng dụng GPS trong đánh bắt cá xa bờ của bác tới đâu rồi! còn cái vụ GLCD KIs108 với LPC2138 em đã pót vd lên trên hethongnhung.com rồi mà!sao bác không chia sẽ kinh nghiệm với anh em!
so sorry các pác!vài hôm nữa em rãnh sẽ pót tiếp bài về cách sử dụng SPI và điều khiển GLCD PCF8833Last edited by hbaocr; 25-07-2008, 08:37.
Comment
-
Em thì mới chỉ là 1 newbie thôi, từ lúc tìm hiểu con 8051 tới giờ được nửa năm nên cũng chưa biết gì nhiều, chủ yếu là học hỏi kinh nghiệm thôi. Thấy bác Bảo nói thể, em đọc lại trên này thấy chưa có ai post phần PWM và code (cả timer và PWM) nên em mạo muội post lên, đây là phần cơ bản thôi (vì em còn gà mà!) bác nào có ý kiến gì thì góp ý cho em với nhé.
Bộ tạo xung PWM được thiết kế dựa trên bộ Timer/Counter, hoạt động theo xung PCLK. Nguyên tắc hoạt động dựa trên các Match events của 7 match register. Có 2 loại xung:
- Single Edge: tất cả các xung đều được set lên 1 ngay khi bắt đầu 1 xung PWM, xung được set về 0 khi giá trị của timer counter bằng với giá trị của 1 trong các Match register 1-6. Có thể có tối đa 6 xung Single Edge đồng thời, tất cả các xung đều có cùng tần số được điểu khiển bởi Match register 0 (khi giá trị của timer counter bằng giá trị trong Match register 0 thì kết thúc 1 xung PWM và bắt đầu 1 xung mới).
- Double Edge: các xung được set bằng 0 khi bắt đầu 1 xung PWM, được set lên 1 bằng 1 Match register và set về 0 bằng 1 Match register khác. Các xung double edge cũng có tần số được điều khiển bởi Match register 0.
Bảng các kênh PWM:
Kênh Single Edge Double Edge
Set by Reset by Set by Reset by
1 Match 0 Match 1 - -
2 Match 0 Match 2 Match 1 Match 2
3 Match 0 Match 3 Match 2 Match 3
4 Match 0 Match 4 Match 3 Match 4
5 Match 0 Match 5 Match 4 Match 5
6 Match 0 Match 6 Match 5 Match 6
Ta có thể thấy có tối đa 3 xung double edge đồng thời (kênh 2, 4 & 6) có thể được điều khiển độc lập bằng 7 Match register.
Các thanh ghi điều khiển PWM:
• PWM Interrupt Register (PWMIR):
Khi xảy ra ngắt do 1 kênh PWM (xảy ra match trên các Match registers) thì bit tương ứng trong PWMIR sẽ được set lên 1. Sau khi xảy ra ngắt phải ghi 1 vào bit đó để xóa cờ ngắt (tương tự T0IR & T1IR).
Bit Ký hiệu Ý nghĩa Giá trị sau Reset
0 PWM0_Int cờ ngắt PWM kênh 0 0
1 PWM1_Int cờ ngắt PWM kênh 1 0
2 PWM2_Int cờ ngắt PWM kênh 2 0
3 PWM3_Int cờ ngắt PWM kênh 3 0
7:4 - Reserved n/a
8 PWM4_Int cờ ngắt PWM kênh 4 0
9 PWM5_Int cờ ngắt PWM kênh 5 0
10 PWM6_Int cờ ngắt PWM kênh 6 0
15:11 - Reserved n/a
• PWM Timer Control Register (PWMTCR):
Bit Ký hiệu Ý nghĩa Giá trị sau Reset
0 Counter Enable 0: disable Counter,1: enable Counter 0
1 Counter Reset khi bit này bằng 1, TC và PC được Reset. 0
tình trạng Reset được giứ nguyên tới khi
bit Counter Enable = 0.
2 - Reserved n/a
3 PWM Enable 0: disable PWM, 1: enable PWM 0
7:4 - Reserved n/a
• PWM Timer Counter (PWMTC):
Tương tự T0TC & T1TC.
• PWM Prescale Register (PWMPR):
Tương tự T0PR & T1PR.
• PWM Prescale Counter (PWMPC):
Tương tự T0PC & T1PC.
• PWM Match Register (PWMMR0-6):
Tương tự các Match register của Timer, khi xảy ra match trên các thanh ghi PWMMR0-6 ta có thể cho dừng timer, reset hoặc yêu cầu ngắt.
• PWM Match Control Register (PWMMCR):
Bit Ký hiệu Ý nghĩa Giá trị sau Reset
0 PWMMR0I 1: ngắt khi PWMTC = PWMMR0 (match 0) 0
1 PWMMR0R 1: reset timer khi match 0 0
2 PWMMR0S 1: dừng timer khi match 0 0
20:3 tương tự cho PWMMR1-6 0
31:21 - Reserved n/a
• PWM Control Register (PWMPCR):
Kích hoạt và chọn loại xung trên các kênh PWM.
Bit Ký hiệu Ý nghĩa Giá trị sau Reset
1:0 - Reserved n/a
2 PWMSEL2 0: xung PWM2 là xung single edge 0
----------- 1: xung PWM2 là xung double edge
6:3 tương tự cho các xung PWM3-6 0
8:7 - Reserved n/a
9 PWMENA1 0: disable PWM1 0
----------- 1: enable PWM1
14:10 tương tự cho PWM6-2 0
15 - Reserved n/a
• PWM Latch Enable Register (PWMLER):
Khi ghi lên các thanh ghi PWMMR0-6, dữ liệu được lưu giữ trong các shadow register. Khi xảy ra match 0 (bắt đầu 1 xung PWM), dữ liệu đó chỉ được ghi lên các thanh ghi PWMMR0-6 khi các bit tương ứng trong PWMLER được set bằng 1, xung PWM mới sẽ hoạt động dựa trên các giá trị mới. Nếu xảy ra việc chuyển giá trị từ các shadow register sang các match register thì các bit tương ứng trong PWMLER sẽ được xóa tự động.
Bit Ký hiệu Ý nghĩa Giá trị sau Reset
6:0 các bit tương ứng cho PWMMR0-6 0
7 - Reserved n/a
Đây là code em viết trên Realview, chương trình dùng để tạo 1 xung 500Hz từ 3 nguồn: PWM1, PWM3 và MAT0.0 (xung trên PWM1 va MAT0.0 co duty cycle là 50%, CCLK =60MHz, PCLK = 15MHz)
Bác Bảo chỉ em cách đưa bài viết vô 1 cái khung kéo lên kéo xuống được như của bác với (đưa vào cái khung có chữ code ấy), viết thế này dài quá, lại bị mất cái khoảng trắng nên hơi khó chịu.#include "LPC214x.h"
int main (void)
{
PINSEL0 = 0x8A;
// P0.0: PWM1, P0.1: PWM3, P0.3: MAT0.0
T0EMR = 0x30;
T0MCR = 2;
T0MR0 = 14999;
// dao gia tri tren chan MAT0.0
PWMPCR = (1 << 3) | (1 << 9) | (1 << 11);
// PWM1: single edge, PWM3: double edge, enable PWM1 & PWM3
PWMMCR = 2;
PWMMR0 = 29999;
PWMMR1 = 14999;
PWMMR2 = 4999;
PWMMR3 = 9999;
T0TCR = 1;
// enable timer 0
PWMTCR = 9;
// enable counter va PWM
while (1);
}Last edited by tuansoibk; 25-07-2008, 10:46.
Comment
-
hi dễ thôi , bạn làm y chang như QUOTE nhưng thay QUOTE bằng CODE thôi!Bác Bảo chỉ em cách đưa bài viết vô 1 cái khung kéo lên kéo xuống được như của bác với (đưa vào cái khung có chữ code ấy), viết thế này dài quá, lại bị mất cái khoảng trắng nên hơi khó chịu.
cheer!
Comment
-
GLCD KIS107 for ARM LPC2000
hi vọng là nó giúp các bác nhiều!Attached Files
Comment
-
Tui thấy hơi lạ cuộc thi của NXP có đến hơn 50 đội tham gia mà chẳng thấy ai thắc mắc hay gặp khó khăn post bài lên hỏi gì cả,toàn thấy tui hỏi thui ,chắc các bác đều nắm chắc dòng vi điều khiển này rồi hay sao ấy .Tui thì mới làm quen kiến thức gần như Zero động vào đâu cũng khó khăn , do vậy các bác thông cảm giúp đỡ dùm .
Comment
-
Không phải là ai cũng biết hết rồi, mà học thằng này chú tâm vào cái datasheet, các ví dụ, và nắm vững C/C++. Mấy thứ đó có hỏi cũng không bằng ngồi đọc sách và ..gõ. Người ta chỉ hỏi khi làm đúng như trong sách nhưng kết quả khác đi, với những bộ thí nghiệm chuẩn và các ví dụ hiện tại của Keil C thì hầu như mình chẳng gặp rắc rối gì trong làm quen với nó cả.Nguyên văn bởi trongnghia85 Xem bài viếtTui thấy hơi lạ cuộc thi của NXP có đến hơn 50 đội tham gia mà chẳng thấy ai thắc mắc hay gặp khó khăn post bài lên hỏi gì cả,toàn thấy tui hỏi thui ,chắc các bác đều nắm chắc dòng vi điều khiển này rồi hay sao ấy .Tui thì mới làm quen kiến thức gần như Zero động vào đâu cũng khó khăn , do vậy các bác thông cảm giúp đỡ dùm .
Hôm trước mình kiếm datasheet của LPC2148 cũng khá vất vả, search nó ra cái gì đâu không, nên hôm nay post lên cho anh em ai có nhu cầu và chưa kiếm ra sử dụng.Attached FilesDiễn đàn Vi điều khiển:
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Đấu tắt điện cho máy tính bảngbởi bqvietBqv cáo lỗi vì chưa đủ khả năng diễn giải để người đọc hiểu. Người làm kỹ thuật sâu đôi khi như thế đó. Về việc nạp pin không vào dù cell mới, khả năng cái mạch quản lý đó đã hỏng - cũng chính là nguyên nhân đám cell cũ hỏng từ đầu.
-
Channel: Thiết bị điện tử cá nhân
hôm nay, 17:17 -
-
Trả lời cho Xin hỏi về mạch thu FM/AM trong catsettebởi nguyendinhvanTheo tôi, nó chỉ là cái Tuy- ê - nơ, hoặc là khối Trung Văn Tần, nó một phần trong cái Da đì ô thôi. Vì có thấy một chỗ có ba chân hàn, giiống như chân Cờ rít sờ tăng 455 ki nô hẹc. Còn khối Tuy ê nơ thì không nhìn thây cái Di ốt Va di cáp...
-
Channel: Điện thanh
Hôm qua, 19:59 -
-
Trả lời cho Đấu tắt điện cho máy tính bảngbởi afrendlyCó vẻ ngoài hiểu biết của mình rồi. Cuối cùng mình quyết định tìm mua 2 pin trên Shopee, giá 200K thay vào. Tuy nhận pin được 1%, sạc mãi không vào nhưng cũng mở được máy lên. Vậy cũng tạm. Cảm ơn bạn đã hỗ trợ nhé....
-
Channel: Thiết bị điện tử cá nhân
04-12-2025, 01:27 -
-
Trả lời cho Máy điện châm ?bởi nick22Đúng như bạn nói, máy điện châm hiện nay trên thị trường đã khá đa dạng về mẫu mã, chức năng và giá thành.
-
Channel: Điện tử y sinh
01-12-2025, 13:23 -
-
Trả lời cho Làm thế nào để check IC LM358bởi thetungĐể check IC sống hay chết thì đơn giản : bạn lắp cái mạch ( khuếch đại hoặc dao động ) chạy bằng con IC đó ,nhưng vị trí IC thì lắp cái đế .... thế là cứ cắm rút thì biết . Còn không thì kiếm cái này : https://shopee.vn/Xu-M%C3%A1y-ki%E1%...di-%C4%91%E1%B...
-
Channel: Hướng dẫn tìm thông tin linh kiện
28-11-2025, 14:34 -
-
bởi ngochung90Tình hình là em có mua mạch 3s về để hàn vào khối pin 12v, hàn xong em đo tại các chân từ B-, B1, B2, B+ thì điện áp pin vẫn đủ 12,6v, nhưng tại 2 chân ra P- P+ thì đo chỉ được 6,3v là bị sao các bác, và chân P- P + này đồng thời là chân sạc xả thì mình cắm sạc xả cùng lúc được ko ạ
...-
Channel: Điện tử dành cho người mới bắt đầu
28-11-2025, 10:32 -
-
Trả lời cho Làm thế nào để check IC LM358bởi nguyendinhvanViệc đó tùy thuộc trình độ khoa học kỹ thuật công nghệ ứng dụng hiện tại thôi.
Trong datasheet,họ đưa ra nhiều thông số. Tùy theo khả năng , và những thông số họ cần, họ sẽ kiểm tra casc số đo có khớp với số liệu trong datasheet...-
Channel: Hướng dẫn tìm thông tin linh kiện
27-11-2025, 18:00 -
-
bởi kqbn9091Em có mạch AT89s8253 đang cần sửa số serial no của CHIP mà giờ lâu quá rồi không dùng keil nên không biết phải làm sao, trong khi chỉ còn file hex. Mạch nạp thì progris khi viết không sửa được số serial của IC. Rất cần bác nào còn làm về 89...
-
Channel: Vi điều khiển họ 8051
27-11-2025, 11:13 -


Comment