C:\WINCE600\PLATFORM\BEAGLEBONE_CE6_BSP\SRC\DRIVERS\SDHC\IMPL

 

 

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\SDMemory]
    "Folder"="Flash Disk"   <<====  변경

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\SDHCMemory]
    "Folder"="Flash Disk"    <<====  변경

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\MMC]
    "Folder"="iNAND"
; @CESYSGEN ENDIF CE_MODULES_SDMEMORY
IF BSP_HIVEREG_SDHC
; END HIVE BOOT SECTION
ENDIF BSP_HIVEREG_SDHC

 


'IOT Board > BEAGLEBONEBLACK' 카테고리의 다른 글

USB 드라이버 포함시키기  (0) 2014.12.12
wavrec ERROR 관련  (0) 2014.11.07
백라이트 관련  (0) 2014.11.07
Platform.reg  (0) 2014.11.04
WINDOWS CE 6 제어판 관련 소스위치  (0) 2014.11.01

using System.Runtime.InteropServices;   // 추가 하고

[DllImport("coredll.dll")]

private extern static void GetSystemTime(ref SYSTEMTIME lpSystemTime);

[DllImport("coredll.dll")]

private extern static uint SetSystemTime(ref SYSTEMTIME lpSystemTime);

        private struct SYSTEMTIME

        {

            public ushort wYear;

            public ushort wMonth;

            public ushort wDayOfWeek;

            public ushort wDay;

            public ushort wHour;

            public ushort wMinute;

            public ushort wSecond;

            public ushort wMilliseconds;

        }


        private void GetTime()  //  시스템 시간을 읽어온다

        {

             

            SYSTEMTIME stime = new SYSTEMTIME();

            GetSystemTime(ref stime);

          //  MessageBox.Show( Convert.ToString( stime.wHour));   현제시간 표시

           

        }


                                   // SetTime( "20121225" , "221122")  호출하면 됨  

        private void SetTime(string t_date, string t_time)    // 시스템 시간을 설정

        {

            try

            {

                int day_change = 0;  // 일자가 변경되는걸 알기 위해서


                SYSTEMTIME systime = new SYSTEMTIME();


              // UTC 타임이라 + 9시간 차이가 난다. UTC 로 검색해보시면

                if (Convert.ToInt16(t_time.Substring(0, 2)) >= 9)

                    systime.wHour = (ushort)(Convert.ToInt16(t_time.Substring(0, 2)) - 9 % 24);

                else

                {

                    day_change = 1;

                    systime.wHour = (ushort)(Convert.ToInt16(t_time.Substring(0, 2)) + 15 % 24);

                }

                systime.wMinute = (ushort)Convert.ToInt16(t_time.Substring(2, 2));

                systime.wSecond = (ushort)Convert.ToInt16(t_time.Substring(4, 2));


                systime.wYear = (ushort)(Convert.ToInt16(t_date.Substring(0, 4)));

                systime.wMonth = (ushort) (Convert.ToInt16(t_date.Substring(4, 2))  ) ;

                systime.wDay = (ushort)(Convert.ToInt16(t_date.Substring(6, 2)) - day_change); // 시간이 24시가 넘어가면 day 하루 늘어나게 된다. 그래서  day_change 변수를 사용해서 하루를 빼줌.


                SetSystemTime(ref systime);

            }

            catch

            { }

        }

 


 

 

test.activityanimation 프로젝트를 하나 생성 합니다.

 

MainActivity.java  <-  시작 Activity

SBB1.java           <-  호출될 엑티비티   ( class 추가했습니다.)

 

 



 

res 폴더 하위 폴더에 anim 폴더를 하나 만듭니다.

 

anim  폴더 안에  animations.xml 파일들을 넣습니다. 물론 animations.xml API 샘플에 존재 합니다.

 

소스를 첨부했으니 압축 풀어보시면 xml 파일이 들어 있을껍니다.  


다음 소스 입니다. 


public class MainActivity extends Activity {


@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

Button  bt =  (Button)findViewById(R.id.button1);      

 

bt.setOnClickListener(new View.OnClickListener() {   

@Override

public void onClick(View v) 

{

Intent intent = new Intent(MainActivity.this, SBB1.class); // new Intent(현재보여지는액티비티, 불러올 액티비티) 

overridePendingTransition(R.anim.layout_animation_row_left_slide, R.anim.cycle_7);

startActivity(intent);     //  go Intent

  return;

}

});

 

}


}


원하는 에니메이션을 기술하시면 되겠습니다. 

 

 overridePendingTransition(R.anim.layout_animation_row_left_slide, R.anim.cycle_7);


layout_animation_row_left_slide.xml 안에 내용을 보시면 


layoutAnimation xmlns:android="http://schemas.android.com/apk/res/android"

        android:delay="10%"

        android:animation="@anim/slide_left" />  


  저 delay 값을 적적히 조절 하시면 다른 효과가 나타나겟죠 ? 




아래는 소스 파일 입니다. 


test.activtiyanimation.zip


 

 

 

 

 

 

 

 

 


굳이 DB 가 필요 없어서 환경 설정을 간단히 저장 할 수 있는 방법 

-- 저장할때 -- 

SharedPreferences pref = getSharedPreferences("Package name", MODE_PRIVATE);  

SharedPreferences.Editor editor = pref.edit();

editor.putString("mykey", "my_value");

editor.commit();


-- 읽어 올때 --

SharedPreferences sfrens = PreferenceManager.getDefaultSharedPreferences(ddd.this);  // ddd.this 해당클래스

String temp = sfrens.getString("mykey", "0");   //   키가 없을때는 기본값을 0으로 읽어 온다는 뜻





 






  MediaPlayer audio_play = new  MediaPlayer();  // 생성

 if(audio_play.isPlaying()) audio_play.stop();     // 재생중이면 멈춤  

 File ff = new File("test.mp3");                         //  파일선언 

       

   if(ff.exists())                                             // 파일이 있으면

  {

       FileInputStream fis = new FileInputStream("test.mp3"); // 스트림

       FileDescriptor fd = fis.getFD();                         

audio_play.reset();

audio_play.setDataSource(fd); 

audio_play.prepare();

audio_play.start();

 }




명함만한 보드... 실제 작착시 두깨는 좀 더 늘어 나겠지만 아래처럼...



  윈도우 CE 에서는 제약이 많은지라... 임베디드 장비쪽은 이넘이 상당히 메리트가 ...

  각격을 보니.. 31만원 정도 함... 국내에서는 아직 판매 하는곳이 없지만 . 
 

   http://www.e-itx.com/p900-10.html

   위 링크에서 판매하네요. 배송비.. 등등 합치면 더 올라가겠지만.. 상당히 메리트가... 있음

  윈도우 기반 프로그래머들에게는 아주 좋은 장비 임이...


기본 프로젝트를 하나 생성합니다.




 폼 위에 버튼 하나를 그리구요



 그리고 버튼 1 이벤트에 아래와 같은 코드를 입력합니다.

 DataTable dt;
        private void button_Click_1(object sender, EventArgs e)
        {

            dt = new DataTable("my_tbl");

            dt.Columns.Add("No");
            dt.Columns.Add(new DataColumn("Description"));
            dt.Columns.Add(new DataColumn("value"));
            dt.Columns.Add(new DataColumn("error_msg"));
            dt.Columns.Add(new DataColumn("memo"));
            dataGrid1.DataSource = dt.DefaultView;

        }




 그리고 버튼1을 누르면 위와같이 내용이 표시 됩니다.

 


 버튼을 몇개 추가해서 구현해 보죠 .


            DataGridTableStyle dgt = new DataGridTableStyle();
            DataGridTextBoxColumn dgtbc = new DataGridTextBoxColumn();
            dgt.MappingName = "my_tbl";
           
           
          
            dgtbc.MappingName = "No";
            dgtbc.HeaderText = "No-restting";
            dgtbc.Width = 100;
            dgt.GridColumnStyles.Add(dgtbc);


            dgtbc = new DataGridTextBoxColumn();
            dgtbc.MappingName = "Description";
            dgtbc.HeaderText = "Description-restting";
            dgtbc.Width = 100;
            dgt.GridColumnStyles.Add(dgtbc);

            dgtbc = new DataGridTextBoxColumn();
            dgtbc.MappingName = "value";
            dgtbc.HeaderText = "error_msg-restting";
            dgtbc.Width = 100;
            dgt.GridColumnStyles.Add(dgtbc);

            dgtbc = new DataGridTextBoxColumn();
            dgtbc.MappingName = "error_msg";
            dgtbc.HeaderText = "error_msg-restting";
            dgtbc.Width = 100;
            dgt.GridColumnStyles.Add(dgtbc);

            dgtbc = new DataGridTextBoxColumn();
            dgtbc.MappingName = "memo";
            dgtbc.HeaderText = "memo-restting";
            dgtbc.Width = 100;
            dgt.GridColumnStyles.Add(dgtbc);

            dataGrid1.TableStyles.Add(dgt);

   스타일 코드





------------------------------------------------------------------------
// 로우 추가 
 
DataRow[] dr;
DataRow dRow = dt.NewRow();
dRow = dt.NewRow();
dRow["No"] = "1";
dRow["Description"] = "첫번째 로우";
dRow["value"] = DateTime.Now.ToString("u").Replace("Z", "");
dRow["error_msg"] = "error";
dRow["memo"] = " " + "Alarm";

dt.Rows.Add(dRow);

dataGrid1.DataSource = dt.DefaultView;
  



---------------------------------------------------------------------------
//삭제 코드
      
            DataRow[] dr= dt.Select(null, null);
           
            for (int i = 0; i <= dr.Length - 1; i++)
            {
                dr[i].Delete();
            }

            dataGrid1.DataSource = dt.DefaultView;






----------------------------------------------------------------------
// 수정 코드 

       DataRow[] dr = dt.Select(null, null);

            for (int i = 0; i <= dr.Length - 1; i++)
                dr[i][1] = DateTime.Now.ToString("u").Replace("Z", "");

            dataGrid1.DataSource = dt.DefaultView;


 




 Visualstudio 을 여시고 wince 프로젝트를 하나 생성 합니다.



  Picturebox 1개를 생성하구요.


     PIcturebox 배경색을 빨강색으로 바꿉니다.




   버튼도 하나 추가 했구요.  Visual Studio 쪽은 준비가 완료되었습니다.  이제 이미지를 구해야겠죠 .



웹에서 도라에몽 사진을 하나 구했습니다.  배경색이 원래 흰색이였는데 제가 포토샵으로 

투명으로 바꾸고 싶은 부분을 저렇게 핑크색으로 채웠습니다. 
 


    using System.Drawing.Imaging;  <<=  선언 하시구요


  버튼1에 이벤트를 하나 겁니다.
 
  Bitmap dora = new Bitmap("doramong.gif");
  pictureBox1.Image = dora;



 실행시켜서 버튼1 클릭하시면 위와같이 도라에몽이 핑크 바탕에서 웃고 있습니다.

여기까지는 문제가 없겠죠 ?

자이제 실질적으로 저 핑크빛 색을 투명 처리 해보겠습니다. 

 



Bitmap mounntain = new Bitmap("mounntain.jpg");  // 산그림
Bitmap dora = new Bitmap("doramong.gif");           // 도라에몽


 Bitmap bmp = new Bitmap(pictureBox1.Width, pictureBox1.Height);
 Graphics g = Graphics.FromImage(bmp);

 

 g.DrawImage(mounntain, 0, 0);    // 먼저 산을 그림니다.

 Rectangle dstrect = new Rectangle((int)0, (int)0, pictureBox1.Width, pictureBox1.Height);
 ImageAttributes attr = new ImageAttributes();
 attr.SetColorKey(dora.GetPixel(1, 1), dora.GetPixel(1, 1));  // 투명할 색을 선택
 g.DrawImage(dora, dstrect, (int)0, (int)0, pictureBox1.Width, pictureBox1.Height, GraphicsUnit.Pixel, attr);


pictureBox1.Image = bmp;



버튼을 클릭하면 위와같이 핑크빛 배경이 사라졌음을 보셨을겁니다.

이해를 돕고자 뒤에 산이미지를 하나 더 그렸습니다.  ^^


+ Recent posts