mấy bạn cho mình hỏi để lưu một giá trị vào trong RAM của con 8051 và đọc nó bằng ngôn ngử C thì làm như thế nào vậy. giống như bên ASM thì dùng lệnh MOVC A,@A+DPTR nhưng bên c thì mình không biết. thank nhiều
Cần giúp về truy xuất bộ nhớ trong C
Collapse
X
-
khai báo biến , VD char a , b; ( biến a , b kiểu char )
khi dùng là nó tự truy xuất thôi .
VD : a = 5;
b= a+2; ( kết quả biến b =7 được ngầm định trong bộ nhớ)
kiểm tra :
if(b==7)
{
bat_den_sang(); // Bật đèn
}Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com
-
cảm ơn tiền bối đẳ reply. tiền bối cho cháu hỏi nếu như vậy thì khi muốn upload một chuổi kí tự lên RAM ( ở đây cháu muốn load 8byte mã quét led matrix ) nằm trong 8byte RAM của 8051 để tính toán cho dể thì khai báo a rồi làm thế nào mà ta đưa mã quét led vào ô nhớ của RAM được ạ.Nguyên văn bởi queduong Xem bài viếtkhai báo biến , VD char a , b; ( biến a , b kiểu char )
khi dùng là nó tự truy xuất thôi .
VD : a = 5;
b= a+2; ( kết quả biến b =7 được ngầm định trong bộ nhớ)
kiểm tra :
if(b==7)
{
bat_den_sang(); // Bật đèn
}
Comment
-
Bạn có thể khai báo mảng tĩnh hoặc động ... khi đó ta truy xuất các phần tử của mảng bằng index của chúngNguyên văn bởi kervin Xem bài viếtcảm ơn tiền bối đẳ reply. tiền bối cho cháu hỏi nếu như vậy thì khi muốn upload một chuổi kí tự lên RAM ( ở đây cháu muốn load 8byte mã quét led matrix ) nằm trong 8byte RAM của 8051 để tính toán cho dể thì khai báo a rồi làm thế nào mà ta đưa mã quét led vào ô nhớ của RAM được ạ.
VD :
char quetlet[8];
quetlet[0] = kitu1;
.........................
quetlet[7] = kitu8;
nghĩa là ... bạn đã tạo ra 1 mảng tên là quetled kiểu char có 8 phần tử ( index từ 0 đến 7 ).
Việc lưu các giá trị vào mảng này sẽ thông qua các index của chúng ( như ví dụ trên ) ... giả dụ kitu1 là chữ a thì đương nhiên quetled[0] sẽ có giá trị là a;
--- Mảng này có thể ghi đọc được để lưu trữ , tính toán
--- Một loại khác là tĩnh ( hằng số ) bằng cách thêm const ở đầu hoặc các phần tử đã được mô tả sẵn . Ta chỉ việc khai báo , lấy ra và dùng .
const unsigned short number[] = { 1,3,6,8,26,50 };
Nghĩa là trong này có 6 phần tử number[0] =1 ; number[1] =3 ;...v.v
khi dùng ta gọi số của phần tử nào sẽ có được giá trị đã đặt ở đó .
---- Để chi tiết hơn bạn nên xem cơ bản về cách dùng mảng , biến trong C . Trong kỹ thuật lập trình cũng có cách mô tả y hệt như vậy !Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com
Comment
Bài viết mới nhất
Collapse
-
-
bởi bqvietĐám UPS cửa cuốn đời cổ vẫn chạy 1 biến áp sắt từ vừa để hạ áp điện lưới nạp bình điện, vừa để kích áp bình điện thành sóng vuông đầu ra đấy thôi. Kiểu tiết kiệm này đã có từ mấy chục năm nay. Sơ đồ đại loại như link
https://www.homemade-circuits.com/si...rchargerchang/...-
Channel: Nguồn!
06-09-2026, 16:49 -
-
bởi dinhthuong92Không biết nó thiết kế kiểu gì mà dùng chung được cuộn cảm L cho cả mạch Buck hạ áp để sạc pin và Boost nâng áp cho Led. Muốn vẽ mạch để xem mà nhiều linh kiện quá, e không kham nổi!
Bác nào có sơ đồ xin up lên cho mọi người tham khảo nhé!...-
Channel: Nguồn!
04-09-2026, 11:09 -
-

Comment