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 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!
Hôm qua, 11:09 -
-
-
Trả lời cho TCL - Tập hợp các vấn đề về màn hình màu TCLbởi dtvankhoeBác nào có file rom này cho em xin em cảm ơn ạ TCL L43S6500 – TPD.RT2841.PB772
-
Channel: Điện tử truyền hình
30-08-2026, 21:08 -
-
bởi domar123Sự kết hợp giữa vi xử lý siêu cấp AMD Ryzen Threadripper 9960X / 9970X cùng card đồ họa Radeon RX 9060 XT / RX 9070 XT 16GB mang lại một cỗ máy "all-in-one" đúng nghĩa. Đây là cấu hình đáp ứng trọn vẹn cho những người dùng cần một hệ...
-
Channel: Đánh giá sản phẩm DTVN
27-08-2026, 11:43 -

Comment