Bạn minh_cly ơi ! bạn có thể cho mình hỏi về hàm add(x,y,z) cụ thể là ntn không. led mình làm dùng 595 xuất ra 64 cột. 595 được điều khiển bằng giao thức SPI. còn portD mình dùng quét 8 lớp kích bằng trans pnp, bạn có thể chỉ mình hàm Add(x,y,z) được không? mình chưa hiểu lắm. cám ơn bạn nhiều nha !.mail mình là vanthuong129@gmail.com
Thông báo
Collapse
No announcement yet.
Hiệu ứng LED Cube 8x8x8 (LED 3D)
Collapse
X
-
bác muốn hỏi làm cube= asm như thế nào ui bày cho.. dùng asm thì code bảng mả hơi dài đó..Nguyên văn bởi dt1090 Xem bài viếtLàm có mà chết hả bro?
Comment
-
Mong Được mọi Người Giúp Đỡ !
Rất Mong Được Mọi Người Xem Code Góp Ý & Chỉnh lại Giúp Em Hoặc Cho Em ý Tưởng Khác Viết lại Code . Em Cảm Ơn Rất Nhiều !

Em dùng 8 con 74HC595 mắc nối tiếp Quét Cột và 1 con quét lớp. cũng Viết theo kiểu Gán khối Led Vào Trục Oxyz
Dưới Đây Là Code cho Hiệu Ứng Đầu Tiên Của Chủ Topic Em Viet lai cho VDK pic 16F877A . Do Trình kém nên ko chạy.
Mong Được mọi Người Giúp. File Code https://docs.google.com/file/d/0B3P8...it?usp=sharingPHP Code:#include <main.h>
#INCLUDE <math.h>
#define rowClk PIN_D0 //Clock
#define rowDat PIN_D1 //Data
#define rowLat PIN_D2 //latch
#define colClk PIN_D3
#define colDat PIN_D4
#define colLat PIN_D5
int1 buffer_xy[64];//Mang 64 bit luu trang thai cua 64 cot
int1 buffer_z[8]; //Mang 8 Bit Luu Trang Thai Cua 8 lop
int8 x,y,z;
int8 Count,time;
#USE FAST_IO (d)
//****************************************************************************//
void interrupt_config()
{
disable_interrupts(INT_EXT); //Khong cho phep ngat ngoai hoat dong (mac dinh)
disable_interrupts(INT_RB); //Khong cho phep ngat RB hoat dong (mac dinh)
disable_interrupts(INT_CCP1); //Khong cho phep ngat CCP1 hoat dong (mac dinh)
disable_interrupts(INT_TBE); //Khong cho phep ngat TBE hoat dong (mac dinh)
disable_interrupts(INT_RDA); //Khong cho phep ngat RDA hoat dong (mac dinh)
disable_interrupts(INT_SSP); //Khong cho phep ngat SSP hoat dong (mac dinh)
disable_interrupts(INT_PSP); //Khong cho phep ngat PSP hoat dong (mac dinh)
disable_interrupts(INT_BUSCOL); //Khong cho phep ngat BUSCOL hoat dong (mac dinh)
disable_interrupts(INT_COMP); //Khong cho phep ngat COMPARATOR hoat dong (mac dinh)
enable_interrupts(GLOBAL); //Cho phep cac ngat co the hoat dong
}
void timer0_config()
{
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_256|RTCC_8_BIT); // T_tm0=T_osc*4*256
enable_interrupts(INT_TIMER0); //Cho phep ngat tran timer0 hoat dong
}
//****************************************************************************//
// Ngat Timer 0 De lay Gia Tri Time
#INT_RTCC
void ngat_timer0(void)
{
set_timer0(2);
Count++;
if(Count==46)
{
// dinh thoi 0.5s
disable_interrupts(GLOBAL);
Count=0;
if(time==99) time=0;
else time++;
enable_interrupts(GLOBAL);
}
}
//****************************************************************************//
void Send_Oxy() //Day 64 Bit vao * IC74HC595
{
int i;
//send 64 bit vao 74HC595
for(i=0;i<64;i++)
{
output_bit(colDat,buffer_xy[i]);
delay_us(1);
output_high(colClk);
output_low(colClk);
}
// Chot xuat 64 bit ra led
output_high(colLat);
output_low(colLat);
}
void Send_Oz() //Day 8 Bit Vao IC74HC595
{
int8 i;
//
for(i=0;i<8;i++)
{
output_bit(rowDat,buffer_z[i]);
delay_us(1);
output_high(rowClk);
output_low(rowClk);
}
// Chot xuat Du Lieu ra led
output_high(rowLat);
output_low(rowLat);
}
//********************************************************************/
//Ham Bat 1 bong led co toa do (x,y,z) trong khoi
void Send_Oxyz(int8 x,int8 y,int8 z)
{
buffer_xy[x+y*8]=1;//cho bit co toa do (x,y) =1
buffer_z[z]=1; //cho bit co toa do Z =1
Send_Oxy(); //
Send_Oz(); //
}
void OFF_ALL()
{
int8 i;
for(i=0;i<8;i++)
{
buffer_z[i]=0;
}
for(i=0;i<64;i++)
{
buffer_xy[i]= 0;
}
Send_Oxy();
Send_Oz();
}
//****************************************************************************//
//Ham Song Cua CHu Topic lay t Tu Timer 0
void effect_wave()
{
int8 L = 7; // Buoc song
int8 T = 1; // Chu ki
float A,xo,yo;
A = 3.5; // Bien do
xo = 3.5; // Toa do diem goc O
for ( y = 0; y < 8; y++) // Quét Y
{
for ( x = 0; x < 8; x++) // Quét X
{
float r = Sqrt(Pow(x - xo, 2) + Pow(y - yo, 2)); // Lay bán kính, Sqrt là can bac 2, Pow(x, y) là x mu y
byte z = (byte)(A * Cos(2*PI*time/T - 2*PI*r/L) + 3.5); // Lay cao do z, 3.5 là vi tri can bang
Send_Oxyz(x, y, z); // Luu vi tri LED sáng
delay_ms(1);
OFF_ALL();
}
}
}
void main()
{
interrupt_config();
timer0_config();
set_tris_d(0x00);
while(true)
{
effect_wave();
}
}
Comment
-
hình như top này bị " Thớt "...bỏ chợ rồi thì phải????

cái này có ai dùng bằng C không? mình được biết mỗi ASP.NET...nên C và C# mù tịt...thấy nó cứ khác khác kiểu gì ý.khó hiểu quá
đề nghị chủ thớt ở đâu mau hiện hình giúp đỡ nhưng ace mới tập tành vào nghề như tụi mình đi
...cụ thể:
+ dùng phần mềm nào để lập trình nó, tài liệu tham khảo về phần mềm( vì thực tế các hàm, các câu lệnh bạn nói thì chúng mình biết, chứ cái nào được phần mềm cung cấp sẵn hay cái nào là do mình tự xây dựng nên bọn mình chả biết





)
+ chi tiết cách gán các giá trị input, output gì gì đó ra các port--->
+ nạp và ghi ra các thanh ghi.
và nhưng lưu ý quan trọng trong quá trình lập trình......VV
Xin cảm ơn !
Comment
-
mình cũng đang làm 8x8x8.
mọi người giúp nhé.
và có 1 số video
ai chưa hiểu có thể tham khảo
https://youtu.be/qMJg2uYzdjs
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Giúp mình vẽ sơ đồ và phân tích nguyên lý làm việc của khảo sát các mạch nguồn ổn áp vớibởi davidcopyBạn muốn hỏi nguyên lý làm việc của mạch nào...
-
Channel: Hỗ trợ học tập
Hôm qua, 22:50 -
-
Trả lời cho Giúp mình vẽ sơ đồ và phân tích nguyên lý làm việc của khảo sát các mạch nguồn ổn áp vớibởi N_Tu_Hoc_HoiBạn cần sơ đồ mạch ổn áp bao nhiêu Volt, Nếu giống anh bạn guiwr có khả năng ổn áp dùng iC họ 78XX, 79XX. Những mạch này bạn tim kiếm trên google sẽ thấy!!
-
Channel: Hỗ trợ học tập
23-03-2026, 02:32 -
-
bởi chinhnguyen9
Điến âp vào 24V;Điên áp ra 30V;Dòng điện ra 10A
Trên nền tảng mạch Boost thay đổi như sau: cự âm tụ lọc C không nối mas mà nối vào Vc +24V
Mach phản hồi tao điê áp trên tụ lọc này ổn đinh ở 6V
Kết quả:
· Điện áp ra =24V+ 6V=30V
· Công...-
Channel: Hướng dẫn sử dụng diễn đàn
21-03-2026, 19:33 -
-
bởi chinhnguyen92. Các yếu tố để dòng điện đầu ra không bị "thiếu"
Dòng điện đầu ra bị "thiếu" có thể hiểu là không đủ 10A theo yêu cầu hoặc bị sụt áp khi tải thay đổi. Để đảm bảo điều này, bạn cần xem xét các yếu tố sau:
a. Khả năng chịu dòng của cuộn cảm- Dòng bão hòa (I_sat): Như
-
Channel: Hướng dẫn sử dụng diễn đàn
21-03-2026, 19:06 -
bởi chinhnguyen9
1. Tính toán cuộn cảm (Inductor)
Để tính giá trị cuộn cảm, chúng ta cần thực hiện các bước sau:
a. Xác định chu kỳ nhiệm vụ (Duty Cycle - D)
Với mạch tăng áp lý tưởng, chu kỳ nhiệm vụ được tính theo công thức :
D=1-VinVout=1-24V30V=0.2
Vậy D = 0.2 (20%)
b....-
Channel: Hướng dẫn sử dụng diễn đàn
21-03-2026, 19:03 -
-
bởi chinhnguyen9Công thức
Gain (dB) = 20 × log₁₀(A)
Thí dụ 1; 60dB
log₁₀(A)=60/20=3
⇒ A=V_out / V_in = 10³ = 1.000
Thí dụ 2; 100dB
log₁₀(A)=100/20=5
⇒ A=V_out / V_in = 105 = 100.000
Tí dụ 3; LM 358
Large Signal Open Loop Voltage Gain AVOL V/mV RL = 2.0...-
Channel: Hướng dẫn sử dụng diễn đàn
19-03-2026, 08:44 -
-
Trả lời cho Mạch 3s bị giảm điện áp đầu rabởi minhtri0405chả biết bạn xử lý được chưa , kích sạc hoặc điện áp > điện áp khối pin vào 2 chân P - P+ , nhiều mạch phải yêu cầu có kích lần đầu sau đó mới chạy...
-
Channel: Điện tử dành cho người mới bắt đầu
18-03-2026, 10:01 -
-
bởi minhtri0405đây có phải là 1 cách để test mosfet xịn hay dỏm khi mua đồ tàu không nhỉ , vì ko thể đập ra để coi lõi rồi trả hàng được....
-
Channel: Tâm tình dân kỹ thuật
18-03-2026, 09:57 -
-
Trả lời cho Giúp mình vẽ sơ đồ và phân tích nguyên lý làm việc của khảo sát các mạch nguồn ổn áp vớibởi Tuyenvc345
-
Channel: Hỗ trợ học tập
16-03-2026, 18:05 -

Comment