Friday 4 November 2011

Enter....Into....Qt.....World...With...MINI2440

Qt Creator is an integrated development environment (IDE) that provides you with tools to design and develop complex applications for multiple desktop and mobile platforms.
One of the major advantages of Qt Creator is that it allows a team of developers to share a project across different development platforms with a common tool for development and debugging.
Creating a project allows you to:
  • Group files together
  • Add custom build steps
  • Include forms and resource files
  • Specify settings for running applications
You can either create a project from scratch or import an existing project. Qt Creator generates all the necessary files, depending on the type of project you create. For example, if you choose to create a graphical user interface (GUI) application, Qt Creator generates an empty .ui file that you can modify with the integrated Qt Designer.
Qt Creator is integrated with cross-platform systems for build automation: qmake and CMake. In addition, you can import generic projects that do not use qmake or CMake, and specify that Qt Creator ignores your build system.

I had tried a simple Hello World application and port it on the MINI2440...its  very interesting,it took an hour to compile the code on my PC...and finally i succeed..but its a generic type
Two files we need to port port onto MINI2440,
                                                                          1>hello (this is the executable one )
                                                                          2>hello.desktop 
* Before start with this we need arm-Qtopia-2.2.0 and uncompress it where u feel comfortable.
*Then leave that & set cross compiler in ur pc.
* Install some Library files as u required ...cant recall
*enter into uncompressed  Qt file ...and start working....like replace build file...then compile build_all file 
modify  or design .ui file by Qt designer ..then modify .cpp file an so on ...... 


  •  
 

Wednesday 5 October 2011

PORTING 2.6.32.2 Linux Kernel on MINI2440

No need to get panic,here i am giving some useful steps .Please try yourself,on Fedora9...
Let us know some basic features about  MINI2440(ARM9) board.

*Processor ‐ Samsung S3C2440A, 405MHz (Max 533Mhz) 
*RAM  On‐board 64M SDRAM
*32bit data bus
*clock frequency up to 100MHz 
*FLASH storage 
*128Mbytes (64Mbytes) Nand Flash
*2MBytes Nor Flash with installed BIOS
*LCD Interface
*4‐wire Resistive Touch Panel interface ‐‐ 10 bit A/D
*Supports 4 and 16 level gray‐scale, 256 color, 4096 color STN LCD
*screen size from 3.5 inch to 12.1 inch
*screen resolution up to 1024x768
*Support 4 and 16  level gray‐scale, 256 color, 64K color, True Color TFT LCD
*screen size from 3.5‐inch to 12.1‐inch
*screen resolution to 1024x768 pixels
*Standard configuration for the NEC 240x320/3.5‐inch TFT true color LCD with Touch Panel
*Leads to a 12V power supply on‐board interface, for the large‐size TFT LCD 12V CCFL *backlight
*module (Inverting) Power supply. 
*Interface and resources
*1 10/100M Ethernet RJ‐45 interface (DM9000 network chip)
*3 serial ports ‐ one configured for RS‐232, COM0
*1 USB Host
*1 USB Slave B‐type interface
*1 SD card storage interface, no size limit
*1 Channel Stereo audio output interface, 
*1 Built in microphone
*1 Microphone input.
*1 2.0mm pitch 10‐pin JTAG interface
*4 USER LEDs
*6 USER buttons (with connection to GPIO connector and 8 pin user connector)
*1 buzzer PWM control
*1 adjustable resistor for A/D test
*1 IIC bus AT24C08 chip for IIC Bus Test or configuration data, holds 256 bytes.
*2.0 mm pitch 20PIN camera interface
*Power Interface (5V), with power switch and indicator light 
 *System Clock Source
*Passive crystal
*Internal real‐time clock (with back‐up lithium battery)
*Expansion Interface
*1 34 pin 2.0mm GPIO interface
*1 40 pin 2.0mm system bus interface 
*Size   100 x 100 (mm)

Now these days suppliers are having modified mini2440 with them,having some enhance and additional features..
as  per my experience  mini2440 can be used with
                                           1>wince
                                           2>linux
                                           3>android
so as we are familiar with Linux part so lets try Linux.
we  can play with this board by developing number of application on QT..so lets 1st start with
configuration and porting.

STEPS--->
1>set cross compiler as u need arm-linux


A compiler that runs on one computer but produces  object code for a different type of computer. Cross compilers are used to generate software that can run on computers with a new architecture or on special-purpose devices that cannot host their own compilers.

2>download linux-2.6.32.2.tar.gz  or any other kernel you want.

3>tar xvzf linux-2.6.32.2.tar.gz

4>cd linux-2.6.32.2

5>configure cross compiler inside the kernel.

6>we need to set the clock frequency.

7>comment the unused things smdk_machine_init().

8>make menuconfig.

9>set your required specification u needed.

10>set the required partitions and its specifications.
                                                                supervivi
                                                                param
                                                                kernel
                                                                nand
11>then attach file system to the kernel.

12>make menuconfig.


13>make zimage.


14>basic configuration is over..then if any body want to add some more things like driver part or QT part..in the same way he/she can add accordingly...and thats a long procedure..try to make this one...

Wednesday 17 August 2011

Porting uClinux 2.4 on AX4510

After numerous attempt ,i am able to bring up linux kernel onto AX4510 board /s3c4510 processor.
below there is Board with some basic features.
FEATURES
  • Dimensions: 177 x 130 mm
  • 5.0V DC or USB power supply
  • 4 M bytes Flash(2M x 16bit)
  • 16 M bytes SDRAM(2M x 32bit)
  • 2K x 8 EEPROM
  • USB connecter
  • 10M/100M Ethernet interface connector(RJ45)
  • IDE44 port: for 2.5" hard disk
  • LCD port
  • 2 PS2 port
  • 4 key buttons
  • Reset button
  • 4 LEDS
  • Beeper
  • 20-pin JTAG interface connector
  • all the pins of CPU expand out
 Better to try this on REDHAT or OPENSUSE
Just Download arm-elf-tools-20030314.sh  & uClinux-dist-20040408.tar,toolchain and packages.
different toolchain is also available,we can use that also.
 STEPS--->
    1>Become super user by giving command      #su

    2>Run the tool chain from command promp.

    3>Decompression uClinux-dist-20040408.tar.gz documents to the uClinux-dist directory
                                                                      
    4> Now current working directory will be increased by a uClinux-dist directory.
                                                                      #cd  uClinux-dist
    5>Modify some lines in the    vmlinux-armv.lds.in  document.
                                                             

    6>Then it is important to modify the some line of  vendors files.


    7>Being in uClinux-dist directory from terminal and do make menuconfig / make xconfig
                                                                       select vendor & product //kernel &library
    8>           #make user_only
                                                  
    9>Then according to operating system there is different process to clean(.o) files
    10>     
                    #make
                    #make image

    NOTE :- After a successful compilation you can see the last few lines of output, expressed  romfs.img,image.ram,image.rom. and then Download the image.ram on to the ARM7 board through Hyper terminal/minicom......enjoy

















    When someone shares something of value with you and you benefit from it, you
    have a moral obligation to share it with others...