cauqleuir madre
Dependencies: SDFileSystem mbed TFTLCD
main.cpp
- Committer:
- allanalpha
- Date:
- 2013-02-02
- Revision:
- 41:c18e7c2b912a
- Parent:
- 40:72ed373557ea
- Child:
- 42:1c682c42672c
File content as of revision 41:c18e7c2b912a:
#include "mbed.h" #include "SDFileSystem.h" #include "hx8340bs.h" 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) { printf("superSD\c\n"); 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"); } //fprintf(fp, "Hello fun SD Card World!\c\n"); //fread ( void * ptr, size_t size, size_t count, FILE * stream ); printf("offset at ssd %d\n",*offset); fseek(fp, *offset,SEEK_SET); *offset=*offset+bytes; fread((char*)buffer,1,bytes,fp); /*for(int i=0; i<bytes;i++) { printf("%c ",buffer[i]); }*/ printf("\n"); fclose(fp); } void colorCompute(unsigned char*buffer, unsigned int* colorBuffer,int sizeOfBuffer) { printf("ColorCompute2\n"); int j=0; for(int i=0;i<sizeOfBuffer;i=i+4) { colorBuffer[j]=(buffer[i]<<16)+(buffer[i+1]<<8)+(buffer[i+2]); //colorBuffer[j]=(0x00<<16)+(0x0F<<8)+(0xFF); //colorBuffer[j]=0xFFFFFF; //printf("%d ,%d ",j,colorBuffer[j]); j++; } printf("\n"); } void pickUpLine(unsigned char*buffer, unsigned 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"); } void drawLine(unsigned 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 main() { printf("Hello Stinky World!\c\n"); wait(5); //mkdir("/sd/mydir", 0777); unsigned char rawbytes[880]; unsigned int color[220]; unsigned int absPtr=54; superDisplay(); for(int i=0;i<176;i++) { pickUpLine(rawbytes,color,880,220,"/sd/mydir/rose.bmp",&absPtr); drawLine(color,i); printf("absptr %d\n\n\n", absPtr); } printf("Goodbye World!\c\n"); }