chào bạn kamejoko80. phần hướng dẫn của bạn về lập trình cho LCD rất hay.tuy nhiên trong quá trình đọc có mọt chỗ mình chưa hiểu đó là đoạn "Chọn nút radio address, trong mục size (kích thước vùng nhớ cho ngoại vi) trong drop list chọn 64K, sau đó chọn Generate Addresses, Xillin tự động tính toán các đường địa chỉ và remap lại cho toàn bộ ngoại vi" ở đây ta có thể chọn vùng nhớ cho ngoại vi LCD thấp hơn hay cao hơn được không?và vì sao bạn lại chọn như vậy. bạn hoặc ai đã hiểu có thể giải thích cho mình. thaks a lot!
Thông báo
Collapse
No announcement yet.
LCD kit spartan3E
Collapse
X
-
em đang làm đồ án nhwng rất ít có điều kiện online. Anh có thể send mail để em trao đổi không? Mail của em là nghia0205ktqs@gmail.com
Comment
-
Nếu bạn dùng EDK 9.1 thì vẫn hỗ trợ sử dụng OPB (On-Chip Peripheral Bus). GPIO
(General Purpose Input Output) là một IP core cho phép kết nối giữa giữa các bank địa chỉ (bank giống 8051 đó) với bus OPB. Chúng ta sẽ tạo một GPIO mới, đổi tên thành LCD_16x2 (tên này tùy mình chọn thôi), sau đó thiết lập độ rộng bit dữ liệu của LCD_16x2 là 7 bit (0:6) = (E,RS,RW,D7,D6,D5,D4). LCD 16x2 này sử dụng D4 đến D7 để truyền dữ liệu 8 bit, vậy là phải truyền 2 lần mới được một chuỗi data cho LCD. Các chân E,RS,RW là để điều khiển việc truyền dữ liệu đó. Công việc tiếp theo là vào file system.ucf để kết nối các chân trên với các chân của bank OPB bằng cách thêm các dòng khai báo đại loại như NET LCD_16x2<1> = EA12 ... NET LCD_16x2<2> = EF12 (cái này tuỳ board, tham khảo trên mạng). Đó là xong phần cứng, tiếp theo là đến phần mềm, các bạn cần có file lcd.h chứa các khai báo tên hàm, lcd.c chứa nội dung các hàm cho lcd như Home, ClearLCD, Write2Lines, WriteInteger, WriteFloat, ... các hàm này tìm trên mạng, nếu giỏi về đk lcd các bạn có thể viết thêm hàm tùy ý. Ứng dụng thì làm bên tab Application chắc ko phải chỉ. Làm một cái file gì đó dạng như top.c rồi include mấy cái file h vào, như xparameters.h, util.h, lcd.h, ... , rồi viết chương trình ở dưới. Có một điểm nữa là cần xác định ID DEVICE cho LCD, như đoạn này
đoạn này nằm trong top.cCode:XGpio LCD_Instance; XGpio_Initialize (&LCD_Instance, LCD_DEVICE_ID); XGpio_SetDataDirection (&LCD_Instance, LCD_CHANNEL, 0);
Comment
-
Nếu bạn mới tìm hiểu về EDK thì nên thực hiện 6 bài lab của Xilnx trước , có thể down lab dành cho bản 9.2 (board Spartan3E Start Kit) tại đây : http://users.utcluj.ro/~baruch/ssce/labor/
Các lab này giới thiệu khá chi tiết, dễ hiểu và có trình tự. Bạn nên thực hiện tuần tự từng lab một. Tại lab 3 cũng có 1 bài hướng dẫn tạo IP cho LCD.
(bạn cũng có thể thực hiện các lab này ở các phiên bản EDK thấp hơn , sử dụng bus OPB , tất nhiên phải chỉnh sửa lại 1 vài thứ).
Comment
-
Hi chào các bạn, topic này đã lâu mà kame không vào, hì hì! về vấn đề delay bằng vòng for, mình chỉ ước chừng thôi, bời vì điều khiển LCD tương đối dzễ, delay bao nhiêu cũng được, miễn là dài hơn thời gian đáp ứng tối thiều của nó thôi.
Ở trên kame không cần tính toán chi cả, xung clock của CPU là 100Mhz, mình cứ định lượng chạy 1 vòng for là 1 chu kỳ (tất nhiên là lớn hơn 1 chu kỳ rồi), định lượng i x j x chu kỳ ta có được thời gian delay, đơn giản thế thôi.
Phần ví dụ trên, vì sao mình không dùng thẳng GPIO điều khiển LCD mà lại dùng custom IP làm gì ? Nếu dùng GPIO thì mình chỉ việc add vào đơn giản, viết code C là xong. Còn nếu dùng custom IP thì khó hơn, chủ ý của kame không nhằm điều khiển LCD, bởi vì thông qua cách này mình biết được qui trình tạo custom IP, và bạn có thể tạo ra các core IP FFT, IFFT... theo ý mình muốn.
Vì sao phải làm với microblaze mà không làm với picoblaze. Thực sự mà nói kame chưa làm picoblaze bao giờ, nhưng có lẽ ứng dụng của picoblaze là hạn chế, nên khi mới mua kit về kame nhảy thẳng vào tìm hiểu microblaze. CPU tính ra nó cũng gói gọn nhiêu ấy thôi, điều quan trọng là số lượng cách thành phần, IO (IP core) mà nó support, vì thế kame đã chọn Microblaze hoặc PowerPC 405.
Làm cái khó thì quá sức thường dẫn đến chán nản, nhưng mà nếu làm xong rồi thì mình cảm thấy mọi thứ dzễ dzàng hơn, chúc thành công nhé!Last edited by kamejoko80; 02-03-2009, 21:32.
Comment
-
Bạn có thể chọn kích thước của nó như ý muốn, sau khi chọn xong bạn lock nó lại, sau đó bạn ấn nút generate bình thường, xilinx sẽ tạo kích thước tự động cho những phần khác, phần kích thước bạn lock nó sẽ không thay đỗi.Nguyên văn bởi xuantung Xem bài viếtchào bạn kamejoko80. phần hướng dẫn của bạn về lập trình cho LCD rất hay.tuy nhiên trong quá trình đọc có mọt chỗ mình chưa hiểu đó là đoạn "Chọn nút radio address, trong mục size (kích thước vùng nhớ cho ngoại vi) trong drop list chọn 64K, sau đó chọn Generate Addresses, Xillin tự động tính toán các đường địa chỉ và remap lại cho toàn bộ ngoại vi" ở đây ta có thể chọn vùng nhớ cho ngoại vi LCD thấp hơn hay cao hơn được không?và vì sao bạn lại chọn như vậy. bạn hoặc ai đã hiểu có thể giải thích cho mình. thaks a lot!
Comment
-
Bạn Kame ơi, bạn có thể nói cụ thể "những chú ý" trong các bước ở kit Spartan3e so với kít mà bạn sử dụng để làm Microblaze điều khiển LCD cho mọi người biết được không?Mình thử nghiệm trên Kit Spartan 3e các bước y hệt mà vẫn không được?Technical Institutes
Mobile: 0983278725
Email:
Comment
-
Như vầy! trước tiên bạn thử port của bạn vừa tạo chạy có đúng hay chưa bằng cách gán các chân ra (edit file .ucf) vào dzãy led có trên board, dùng phần mềm xuất ra port xem các led có sáng theo như ý muốn hay không.
Nếu test xong phần này bạn hãy gán vào các chân của LCD. Chú ý về thứ tự bit của port xuất có phù hợp với thứ tự chân LCD hay không, chúc thành công nhé!
Comment
-
Thanks bác kamejoko. Bài viết của bác giúp em rất nhiều trong việc tìm hiểu về MicroBlaze. Tuy nhiên, em không nạp thẳng vào bord như bác mà em phải dùng Modelsim mô phỏng trước, như thế mới test được hết các lỗi của mình. Hiện em đang thử load các core mình cần sử dụng vào Modelsim, sau đó nạp file .hex được biên dịch từ SDK vào BRAM. Em cũng đang gặp một số khó khăn. Có j mong bác chỉ giáo.
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho LÀM BOARD Cho ARDUINObởi NannaMấy ông tín đồ Adruino có kit có thể làm thử xem thế nào !
————————————————————————
skysmotor.co.uk bán các sản phẩm sau trực tuyến: động cơ bước, động cơ servo, trình điều khiển động cơ bước, hộp số hành tinh và có thể mua trực tuyến nếu cần.-
Channel: Kiến thức chung về chip khả trình
hôm nay, 15:12 -
-
bởi opthaianTrong quy trình sản xuất rượu, việc lựa chọn thiết bị chưng cất phù hợp không chỉ ảnh hưởng đến chất lượng thành phẩm mà còn quyết định hiệu quả kinh doanh lâu dài của mỗi xưởng sản xuất. Đặc biệt với các xưởng nhỏ, thách...
-
Channel: Góp ý cho diễn đàn
hôm nay, 12:00 -
-
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