cauqleuir madre
Dependencies: SDFileSystem mbed TFTLCD
Diff: main.cpp
- Revision:
- 56:51410b4b1078
- Parent:
- 55:b6e70eb4276c
- Child:
- 57:ed9db2bcd1bf
--- a/main.cpp Sat Feb 02 16:24:42 2013 +0000 +++ b/main.cpp Sat Feb 02 18:54:33 2013 +0000 @@ -1,91 +1,126 @@ -#include "mbed.h" -#include "SDFileSystem.h" -#include "hx8340bs.h" -DigitalOut scr(p9); -void superDisplay() -{ - HX8340S_LCD lcd( p9, p14, p13, p11); - lcd.Initialize(); - lcd.ClearScreen(); - //lcd.FillScreen(COLOR_BLUE); - //printf("superDisplay\c\n"); -} -void superSd(unsigned char*buffer,unsigned int *offset,int bytes,const char *path) -{ - SDFileSystem sd(p11, p12, p13, p8, "sd"); // the pinout on the mbed Cool Components workshop board - FILE *fp =fopen(path, "r"); - - if(fp == NULL) { - error("Could not open file\c\n"); - } - //printf("offset at ssd %d\n",*offset); - fseek(fp, *offset,SEEK_SET); - *offset=*offset+bytes; - fread((char*)buffer,1,bytes,fp); - //printf("\n"); - fclose(fp); - -} -void colorCompute(unsigned char*buffer, int* colorBuffer,int sizeOfBuffer) -{ - int j=0; - for(int i=0;i<sizeOfBuffer;i=i+4) - { - - //colorBuffer[j]=RGB((buffer[i])&0xff,buffer[i+1]&0x00,(buffer[i+2])&0x00); - colorBuffer[j]=RGB((buffer[i+2]),(buffer[i+1]),(buffer[i])); - //colorBuffer[j]=((buffer[i]<<11)&0xf800)+((buffer[i+1]<<6)&0x7e0)+((buffer[i+2]>>3)&0x1F); - //colorBuffer[j]=(0xff<<16)+(0x00<<8)+(0x00); - //colorBuffer[j]=0xFFFFFF; - //printf("%d ,%d ",j,colorBuffer[j]); - j++; - } - //printf("\n"); -} -void pickUpLine(unsigned char*buffer, int* colorBuffer,int sizeOfBuffer,int sizeOfLine,const char *path, unsigned int *absPtr) -{ - //printf("Pickupline\n"); - superSd(buffer,absPtr,sizeOfBuffer,path); - // printf("byteofFile%d, pixelnum %d, delta %d",*absPtr,j,delta); - colorCompute(buffer,colorBuffer,sizeOfBuffer); - //i=i+delta; - - //printf("\n"); -} +#include "imaginator.h" void drawLine(int* color,int y) { HX8340S_LCD lcd(p9, p14, p13, p11); - //lcd.Initialize(); - + DigitalOut scr(p9); scr=0; - //printf("drawline\c\n"); - //lcd.FillScreen(COLOR_GREEN); - for(int i=0;i<220;i++) - { - lcd.DrawPixel(i,y,color[i]); - //printf("i=%d color=%x \n",i, (int)color[i]); - - } + int k=0; + int j=y; + //int i,p; + //for(int p=0;p<5;p++) + //{ + for(int i=0;i<220;i++) + { + lcd.DrawPixel(i,j,color[k]); + k++; + } + j++; + //} + for(int i=0;i<220;i++) + { + lcd.DrawPixel(i,j,color[k]); + k++; + } + j++; + for(int i=0;i<220;i++) + { + lcd.DrawPixel(i,j,color[k]); + k++; + } + j++; + for(int i=0;i<220;i++) + { + lcd.DrawPixel(i,j,color[k]); + k++; + } + j++; + for(int i=0;i<220;i++) + { + lcd.DrawPixel(i,j,color[k]); + k++; + } + j++; + for(int i=0;i<220;i++) + { + lcd.DrawPixel(i,j,color[k]); + k++; + } + j++; + for(int i=0;i<220;i++) + { + lcd.DrawPixel(i,j,color[k]); + k++; + } + j++; + for(int i=0;i<220;i++) + { + lcd.DrawPixel(i,j,color[k]); + k++; + } + j++; + for(int i=0;i<220;i++) + { + lcd.DrawPixel(i,j,color[k]); + k++; + } + j++; + for(int i=0;i<220;i++) + { + lcd.DrawPixel(i,j,color[k]); + k++; + } + j++; + for(int i=0;i<220;i++) + { + lcd.DrawPixel(i,j,color[k]); + k++; + } + j++; + for(int i=0;i<220;i++) + { + lcd.DrawPixel(i,j,color[k]); + k++; + } + j++; + for(int i=0;i<220;i++) + { + lcd.DrawPixel(i,j,color[k]); + k++; + } + j++; + for(int i=0;i<220;i++) + { + lcd.DrawPixel(i,j,color[k]); + k++; + } + j++; + for(int i=0;i<220;i++) + { + lcd.DrawPixel(i,j,color[k]); + k++; + } + j++; + for(int i=0;i<220;i++) + { + lcd.DrawPixel(i,j,color[k]); + k++; + } + j++; scr=1; + return; } int main() { printf("Hello Stinky World!\c\n"); - //wait(5); - //mkdir("/sd/mydir", 0777); - - - unsigned char rawbytes[880]; - int color[220]; + unsigned char rawbytes[14080]; + int color[3520]; unsigned int absPtr=54; superDisplay(); - for(int i=0;i<176;i++) + for(int i=0;i<176;i=i+16) { - pickUpLine(rawbytes,color,880,220,"/sd/mydir/rose.bmp",&absPtr); + pickUpLine(rawbytes,color,14080,3520,"/sd/mydir/rose.bmp",&absPtr); drawLine(color,i); - //printf("absptr %d\n\n\n", absPtr); } - printf("Goodbye World!\c\n"); } \ No newline at end of file