[Chia sẻ] Thiệp E-card 8/3

bigboy061293

Thành Viên PIF
Mình mạo mụi tạo cái topic này để mừng chúng ta có diễn đàn mới :)




Hôm thi Ecard, mình có hứa là sẻ chia sẽ cách làm cái thiệp bằng board đồng nhưng đến nay vì một lí do abcxyz nào đó nên quên mất :) Hôm nay xin được chia sẻ để mọi người cùng tham khảo
Để làm nên tấm thiệp của mình có mấy hạng mục như sau:
+ 2 Board đồng ghép vào nhau với họa tiết và hoa văn cực kì quyến rũ được làm hoàn toàn bằng đồng :)
+ Led ma trận được điều khiển bằng Arduino
+ Cây đàn organ làm từ 2 con 555 :) để bấm vào kêu te te vui tai chơi :)
+ Phần mềm chuyên tạo các hình ảnh này nọ để chạy trên ma trận led



Đầu tiên là mạch nguyên lí của cái đàn

{hình bị lỗi, mong mọi người thông cảm ! }

Sau đó là 2 cái layout của 2 họa tiết trên mạch





Để tạo các hình ảnh, chữ trên led ma trận, mình dùng phần mềm MXcoder

phần mềm này cho phép ta vẽ trực tiếp lên ma trận cho trước rồi xuất ra bin hay hex gì cũng được

Để tạo "dấu ấn" cho ban giám khảo và chủ yếu để "khoe hàng", hôm đó mình dùng Arduino

Hôm đó, mình dùng Arduino để kéo trực tiếp tất cả các chân bên led ma trận qua, không cần kéo dòng, không chơi IC dịch, nên sự "khoe hàng" được đền đáp bằng 1 đống dây lòng thòng phía sau
Để biết thêm về arduino, mọi người tham khảo tại http://arduino.cc/

và đây là code mẫu của chương trình chạy dòng chữ chúc mừng cùng với vài hiệu ứng hoạt hình khác

Code:
const int dong[] = { 1, 2, 3, 4, 5, 6, 7, 8};
const int cot[] = { 9, 10, 11, 12, 14, 15, 16, 17};
//const int cot[] = { 17, 16, 15, 14, 12, 11, 10, 9};
int m[] = {0x80, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x01, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80};
int a[]= {0x7F, 0x88, 0x88, 0x88, 0x7F, 0x00, 0x00};
int hieuung3[]={
 
một đống mã hex :)
 
};
 
 
 
 
int demo[] = {0x7F, 0x88, 0x88, 0x88, 0x7F, 0xFF, 0x91, 0x91, 0x91, 0x6E, 0x7E, 0x81, 0x81, 0x81, 0x42, };
 
  unsigned long hientai;
  unsigned long ketthuc;
  unsigned long batdau;
 
int sub[8];
 
void setup() {       
 
for (int i=0;i<8;i++)
  {
    pinMode(dong[i], OUTPUT);
    pinMode(cot[i], OUTPUT);
  }
}
void khoitao()
{
  for (int i=0;i<8;i++)
    {
      digitalWrite(cot[i],HIGH);
      digitalWrite(dong[i],LOW);
    }
}
void tachmang(int m[], int i, int sub[8])
{
 
    int j=0;
    for (int k=i;k<i+8;k++)
      {
        sub[j]=m[k];
        j++;
      }
 
}
 
       
void xuatmang(int m[], int t)
  {
    int pi;
    for (int i=0;i<8;i++)
    {
        digitalWrite(cot[i],LOW);
        for (int j=0;j<8;j++)
        {
            pi = bitRead(m[i],j);
            if (pi==1) digitalWrite(dong[j],HIGH);
            delayMicroseconds(t);
            digitalWrite(dong[j],LOW);
        }
        digitalWrite(cot[i],HIGH);
    }
 
  }
 
 
void loop()
{
 
for (int i=0;i<8;i++) (sub[i]=0);
khoitao();
  //hieu ung 2
    for (int j=0;j<20;j++)
    {
    for (int i=0;i<16;i=i+8)
    {
        batdau=millis();
          tachmang(hieuung2,i,sub);
 
      while (millis() <= batdau + 100)
        {
 
        xuatmang(sub,300);
 
        }
    }
    }
 
for (int i=0;i<8;i++) (sub[i]=0);
khoitao();
  //hieu ung 3
 
    for (int j=0;j<3;j++)
    {
    for (int i=0;i<48;i=i+8)
    {
        batdau=millis();
          tachmang(hieuung3,i,sub);
 
      while (millis() <= batdau + 200)
        {
 
        xuatmang(sub,300);
 
        }
    }
    }
  // loi chuc
 
      for (int i=0;i<8;i++) (sub[i]=0);
      khoitao();
 
  for (int i=0;i<460;i++)
    {
        batdau=millis();
          tachmang(chucmung,i,sub);
 
      while (millis() <= batdau + 100)
        {
 
        xuatmang(sub,300);
        }
      }
/*
  for (int i=0;i<8;i++) (sub[i]=0);
  khoitao();
 
 
  //hieu ung 1
    for (int i=0;i<512;i=i+8)
    {
        batdau=millis();
          tachmang(hieuung1,i,sub);
 
      while (millis() <= batdau + 50)
        {
 
        xuatmang(sub,300);
 
        }
    }
  */
}

và toàn bộ những thứ linh tinh liên quan tới quá trình làm( layout, xì ke ma tíc, phần mềm mxcoder, ....) mọi người tải tại đây
Code:
http://www.mediafire.com/?psidng826cac6h6
tái bút: còn phần khá hot là kinh nghiệm để làm 1 board đồng với họa tiết "đỉnh" như vậy thì xin "chém" tiếp vào một ngày gần đây :) tại bây giờ buồn ngủ quá :)

cám ơn mọi người đã tham khảo :)
 

bigboy061293

Thành Viên PIF
Để đáp lại sự mong chờ và ủng hộ của mọi người dành cho, hôm nay xin chia sẻ tiếp kinh nghiệm để làm một board đồng như vậy

- Dân điện chúng ta thì ai cũng kinh qua chuyện làm mạch 1 lớp là chuyện đương nhiên nên chắc ai cũng hiểu nguyên lí của nó rồi he :) Nhưng cứ theo nguyên tắc chung là lấy 1 chất liệu gì đó phủ lên mặt đồng, rồi làm sao mà cho tan đi phần đồng không được phủ (quang khắc, sắt III, ...) rồi làm trôi đi lớp che phủ đó thì được một hình dạng abcxyz nào đó làm bằng đồng.
- Hồi xưa người ta vẽ bằng bút lông từng đường luôn (cái này coi mấy cái datasheet cũ cũ, nó in nguyên cái layout được vẽ bằng tay nên biết :) ...). Bây giờ hiện đại, mình xài orcad, eagle, ... để làm mạch. Xuất phát từ ý tưởng này, câu hỏi đặt ra là tại sao không tạo nên những nét cong uốn lượn gợi cảm :) Vì vậy nên đó là nguồn cội của sự việc ...
- Những chuyện cần chuẩn bị :
+ Vài họa tiết đơn giản dạng như


hay là cái này



hay là cái này




vân vân, còn ai biết về photoshop thì có thể dùng mấy cái brush của nó cũng được. Họa tiết chỉ có màu trắng và đen thôi, vì khi làm ra, độ mờ của họa tiết khó trùng với độ mỏng của lớp đồng sau khi ngâm. Chú ý là khi chọn thì độ phân giải vửa đủ thôi, cũng đừng thấp hay cao quá (lí do sẽ đề cập sau)

+ Phần mềm chỉnh sửa PDF Foxit PDF editor

Code:
http://www.mediafire.com/?iwzudxz1ykc
+ Cùng với những thứ linh tinh làm mạch in khác :)
+ Sự kiên nhẫn ---> để ngồi lắc ... board :)


- Thực hiện như sau

Cài cái PDF editor đó vào, mở New, chọn 1 trang PDF mới, rồi chèn cái hình mình vô đó. Chỉnh cho PDF là định dạng A4 (mà theo kinh nghiệm là nó tự động chỉnh sẵn rồi), rồi cân chỉnh thế nào đó cho hợp lí và theo ý thích. Đây là lí do vì sau cần độ phân giải hình vừa phải, nếu cao quá thì sẽ gặp tình trạng như ai đã từng đi in mạch bằng file .max ở tiệm in mà kêu nó chép ra 3 4 cái đó :) --> đợi tới sáng luôn ... , còn thấp quá hình sẽ bị bể nên xấu lắm.

Phát triển thêm ý tưởng : Có thể dùng các họa tiết trang trí theo đường viền để trang trí cho mạch in ( vốn khô khan vì những đường thẳng tấp :) Bằng cách chuyển thằng file .max qua pdf ( cái này dùng doPDF : http://www.dopdf.com/ để tạo máy in ảo, lúc chọn in file .max thì chọn vào máy in này) rồi "múa lửa" cho nó bằng cách thêm vào các họa tiết đó :). Hoặc đơn giản thì có thể làm vài cái hình đơn giản để trang trí thôi (tặng ba mẹ, ông bà hay ghệ gọc ... hay tự kỉ cũng được :) ) Sau này, mở file PDF đó bằng adobe reader, chỉnh 100% là đúng y kích thước thật của nó ngoài đời đó !

Việc còn lại là in ra rồi ủi rồi ngâm rồi lắc nữa thôi :) Đối với những hình có nét nhỏ, đậm đặc thì cần bàn tay khéo léo, có hoa tay :) để ủi cho kĩ và thần kinh thép để ngồi lắc cho khí thế vào :4cool_beauty:

Rồi còn chờ gì nữa, làm liền thôi :) Ai nói dân điện không biết lãn mạn nào ?":*"
Cám ơn mọi người đã ủng hộ và quan tâm :) Chúc các bạn, anh, chị có một tác phẩm tuyệt vời theo sáng tạo của riêng mình. Làm xong nhớ khoe hàng nhe :)

Vài mẫu tham khảo:





tái bút: mấy cái dính dính với nhau, để đơn giản, có thể dùng paint để cắt nó ra nhe :)
 

xe đạp

Trứng gà
là mình sợ nếu thiết kế mạch hoạt động ở tần số cao sẽ sinh ra hiện tượng nhiễu do các đường mạch cong, dĩ nhiên vì đây là cái thiệp nên thiết kế của bạn chú trọng vào tính thẩm mỹ (nhìn quả tim thì cũng thấy nó đẹp rồi), dù sao thì đây cũng là một cách thiết kế mạch độc đáo
 

xe đạp

Trứng gà
quên, tiện thể cho mình hỏi, con atmega8-8pu có thể dùng làm arduino ko nhỉ??? mình thấy nó có cái mạch dùng atmega8-16pu, avr mình chưa xài nên cũng ko biết nạp nó thế nào
 

bigboy061293

Thành Viên PIF
quên, tiện thể cho mình hỏi, con atmega8-8pu có thể dùng làm arduino ko nhỉ??? mình thấy nó có cái mạch dùng atmega8-16pu, avr mình chưa xài nên cũng ko biết nạp nó thế nào
mình không rõ, nhưng thường con atmega8 này để làm mạch nạp isp, còn làm arduino thì thông dụng người ta dùng atmega328 hay 168, có con 644 làm cũng được. Trên mạng có nhiều, chịu khó tham khảo sẽ có thôi :D
 

xe đạp

Trứng gà
ờ, có xem nhiều mạch, nhưng mà tại xưa giờ ko có thiện cảm lắm với avr nên cũng ko rành lắm về avr, thấy có mấy cái pinguino dùng pic, ko biết nó thế nào
 
Top