Social Icons

twitterfacebookgoogle plusrss feedemail

12/31/2014

如何在Ubuntu 14.04上安裝和配置Apache

沒有留言:
做個纪录

1. 命令行安装Apache
  打開"終端窗口" (Ctrl+Alt+T)
  輸入"sudo apt-get install apache2"

2. 預設的網站根目錄的路徑
 Apache安裝完成後,預設的網站根目錄是"/var/www/html",在終端窗口中輸入"l
 在瀏覽器中輸入"http://127.0.0.1",就可以打開該頁面,
 或是在瀏覽器中輸入"http://localhost"一樣可以打開該頁面 。

3. Apache的第一個配置文件apache2.conf的路徑
 在終端窗口中輸入"ls /etc/apache2"
有一個"apache2.conf"的配置文件。

4. Apache的第二個配置文件000-default.conf的路徑
 在終端窗口中輸入"ls /etc/apache2/sites-available"
有一個"000-default.conf"的配置文件。

5. 修改網站根目錄   sudo chmod 777 -R /etc/www
   (1)、在終端窗口中輸入"sudo vi /etc/apache2/apache2.conf"
        找到"<Directory /var/www/>"
        更改"/var/www/"為新的根目錄就可以了。

   (2)、在終端窗口中輸入"sudo vi /etc/apache2/sites-available/000-default.conf"
        找到"DocumentRoot /var/www/html"的位置-->更改
       "/var/www/html"為新的根目錄就可以了,這裡更改為"/var/www/"。

設定權限  : sudo chmod 777 -R /etc/www

6. 重新啟動Apache
   在終端窗口中輸入"sudo /etc/init.d/apache2 restart"


9/08/2014

103年度 國中教育會考 排名計算 程式

沒有留言:
看了這一篇 "國中教育會考成績資料統計分析"才知道,原來現在國中升學考試成績的計算方式怎麼那麼的麻煩....於是就臨時寫了一支程式來幫忙計算,臨時做的請各位別太苛求。

下載點: 點此連結
版本:1.0.0.5
版本功能:
  • 排名計算
  • 多模擬考分頁統計(不知道可以到幾個分頁)
  • 全選案下ctrl+C可以複製內容
  • 自定義排名
  • 點選標題欄位可以做排列
如果有需要在程式上直接編輯操作或者輸入對題數就可以算出級分...等功能在連繫我。

排名方式:
總分 >
科目(國>數>英>社>自)級分,其中(A=A+=A++>B=B+=B++>C) >
科目級分數量,其中(A++>A+>A>B++>B+>B>C) >
科目級分(國>數>英>社>自)(A++>A+>A>B++>B+>B>C)

檢單說呢! 讓程式幫你算就對了
執行前
點圖可放大


執行後
點圖可放大
影片觀賞

11/15/2013

[verilog][c] CRC 循環冗餘校驗 實踐

沒有留言:
最近幾位學弟妹在問verilog的作業(QAM 16、QAM256以及CRC),順便也學習寫了一下

CRC的概述我這邊就不說明了,請參考WiKi 或者是這篇文章,在這邊只介紹程式碼。
(不過稍微注意一下維基百科裡面原理是對的,但下面舉的例子有點問題)


CRC 16 的 Verilog 程式碼(P(x) = x16+ x12+ x5+ x0)

module CRC_Unit(BITVAL, BITSTRB, CLEAR, CRC);
   input        BITVAL;                            // Next input bit
   input        BITSTRB;                           // Current bit valid (Clock)
   input        CLEAR;                             // Init CRC value
   output [15:0] CRC;                               // Current output CRC value

   reg    [15:0] CRC;                               // We need output registers
   wire         inv;
   
   assign inv = BITVAL ^ CRC[15];                   // XOR required?
   
   always @(posedge BITSTRB or posedge CLEAR) begin
      if (CLEAR) begin
         CRC = 0;                                  // Init before calculation
         end
      else begin
         CRC[15] = CRC[14];
         CRC[14] = CRC[13];
         CRC[13] = CRC[12];
         CRC[12] = CRC[11] ^ inv;
         CRC[11] = CRC[10];
         CRC[10] = CRC[9];
         CRC[9] = CRC[8];
         CRC[8] = CRC[7];
         CRC[7] = CRC[6];
         CRC[6] = CRC[5];
         CRC[5] = CRC[4] ^ inv;
         CRC[4] = CRC[3];
         CRC[3] = CRC[2];
         CRC[2] = CRC[1];
         CRC[1] = CRC[0];
         CRC[0] = inv;
         end
      end
   
endmodule


11/14/2013

特殊質數數列

沒有留言:
最近很喜歡數列,剛剛在看質數時發現幾個有趣的質數數列,在這邊分享給大家

數列1
33333331這個質數,是可以由左至右依序拿掉一位數,仍然是質數
33333331
3333331
333331
33331
3331
331
31
可惜的333333331(17×19607843) 並不是質數。

數列2
73939133這個質數是可以由右至左依序拿掉一位數,仍然是質數

73939133
7393913
739391
73939
7393
739
73
7

11/10/2013

Galaxy android 開發人員選項開啟

沒有留言:
最近我妹拿了一隻Samsung Galaxy系列的手機,想說要裝點東西在上面,結果找不到開發人員選項 的問題..在這邊提供解決方法。

貌似android 4.X 板之後,不管是哪間廠商的手機開發人員選項都被隱藏了

1.首先 先至"設定" > "更多" >> "關於設備"

6/11/2013

eclipse使用SWT/Swing Designer 作JAVA視窗程式開發

沒有留言:

eclipse 在開發JAVA swing 或者是AWT程式時,應該很多人都會遇到元件擺放的問題,這時候我們可以安裝SWTDesigner/Swing  Designer 來設計更漂亮的介面

安裝方式:
Help→Install New Software,work with:依照你的版本輸入下面的連結

Eclipse 3.7 (Indigo)
http://dl.google.com/eclipse/inst/d2wbpro/latest/3.7

Eclipse 3.6 (Helios)
http://dl.google.com/eclipse/inst/d2wbpro/latest/3.6

Eclipse 3.5 (Galileo)
http://dl.google.com/eclipse/inst/d2wbpro/latest/3.5
連結來源:https://developers.google.com/java-dev-tools/download-wbpro?hl=zh-CN

6/09/2013

Matlab 驗證碼辨識系統

1 則留言:

網路上經常下載東西或者要登入帳號密碼時都會出現一組文字的驗證碼要求使用者輸入完畢後才可以登入下載,這時候我們可以嘗試著使用電腦幫我們做影像辨識,然後自動輸入這組文字,以下是程式碼暫時就不解是原理了。

當然以下這個程式只能辨識簡易的辨識系統或者辨識整篇文章...太複雜的圖片可能就沒辦法了



用MATLAB做Arduino的GUI界面

沒有留言:
Arduino與matlab結合,看來Arduino真的很強大




6/03/2013

解決匯入圖片至android模擬器中找不到的問題

沒有留言:

以前匯入圖片製Android模擬器中都可以正常顯示,最近在寫android的程式卻遇到把圖片上傳至模擬器中卻不能顯示(如影片前半段)

模擬器上傳圖片的方式可以如同影片中的操作,但建議可以練習一下打指令~下面稍為介紹一下怎麼使用指令上傳,然後再說明要怎麼解決無法查看圖片的這個問題。

上傳圖片

$ adb shell mount -o remount rw /sdcard


$ adb push images/ /sdcard/
push: images/1.png -> /mnt/sdcard/1.png

6/02/2013

[OpenCV] 人臉偵測 (Face Detection)

沒有留言:
點圖可放大

Paul Viola等人利用了三個演算法,來快速找到人臉。第一個是Integral Image,第二個是 AdaBoost,第三個是Cascade classifier。
Cascade Detection

詳細步驟可以參考"Robust Real-Time Face Detection" 這篇paper,或者可以看下面我整理的幾份文章
1.robust-real-time-face-detection 介紹
載點
2.robust-real-time-face-detection 投影片
載點

[OpenCV]在DEVC++中安裝openCV

沒有留言:



(1)下載 OpenCV
   原版:
   載點1   載點2 
   程式碼修正版 
   載點1 
(2)
如果您是下載原版 安裝OpenCV2.0在C:\OpenCV2.0
如果您是下載修正版 解壓縮在C:\OpenCV2.0
(3)在DEV 工具/編譯器選項/編譯器/編譯器設定組態
新增編譯器設定(綠色加號按鈕)並命名為"OpenCV2.0″



解決Win7 framework4.0 失敗錯誤 0xc8000222

沒有留言:



解決辦法


方法/步驟
1.用工作管理員執行cmd( 命令提示字元)


2.輸入 net stop WuAuServ

5/30/2013

C語言製作音樂 -小蜜蜂

沒有留言:

其實寫程式並沒有那麼的無趣~
大家可以用C語言寫些歌曲出來XD

以下程式碼如果不能執行,應該是編碼問題~ 可以直接下載.C檔
載點一
載點二

5/27/2013

JAVA 網路程式-基本的Client & Server 檔案傳送

沒有留言:
因為有人來問我JAVA版的網路程式要怎麼寫,所以這邊就稍微解釋一下簡單的JAVA檔案傳送!
程式可以用來傳送文字檔、影片檔...等檔案,但是在網路不穩定時會出問題唷~
因為這只是簡單的範例程式,想要更進一步請參考檔案傳送與效能分析
server

client

5/21/2013

ISOLinux 如何製作開機光碟

沒有留言:
前面已經講過如何製作USBlinux

相關連結
[USB linux] 1.打造2MB 的 linux USB 隨身碟
[USB linux] 2.核心編譯
[USB linux] 3.建立ramdisk的root filesystem (initrd)
[USB linux] 4.建置busybox
[USB linux] 5.最後步驟建置boot loader

至於要如何把自己做的kernel做成開機光碟或者iso檔給別人下載呢?
ISOLinux中告訴我們要這麼做
  • Make sure you have a recent enough version of mkisofs. I recommend mkisofs 1.13 (distributed with cdrecord 1.9), but 1.12 might work as well (not tested). Binary versions for Windows can be found on the web.
  • Download Syslinux
  • Create a directory called "CD_root". This is the ISO image master file tree
    • Copy all files you want to have on the CD into this directory
  • Create a directory called "isolinux" underneath the directory "CD_root"
  • Create directories "images" and "kernel" underneath the directory "CD_root"
    • Copy any floppy images you want to boot into "images"
    • Copy "memdisk/memdisk" from the Syslinux archive into "kernel"
  • Use the following command to create your ISO image:
mkisofs -o output.iso \
   -b isolinux/isolinux.bin -c isolinux/boot.cat \
   -no-emul-boot -boot-load-size 4 -boot-info-table \
   CD_root
The file boot.cat will be automatically created.

[USB linux] 5.最後步驟建置boot loader

沒有留言:
boot loader的責任是接手BIOS的開機任務,負責找出kernel image的所在位置,
載入kernel到記憶體中,傳給kernel image適當的參數,接著將執行權交給kernel,完成開機

我們要先為隨身碟寫入boot loader,我們使用syslinux
syslinux是一個Linux的boot loader,專為fat檔案系統設計的,
一般的隨身碟通常為fat32,軟碟也適用
 syslinux /dev/sdc1
sdc1請更改為你的裝置名稱

如果你不確定你的隨身碟在哪一個裝置,可以用df指令看掛載點

再來要編輯boot loader的設定檔
vi syslinux.cfg
內容如下:
default linux
prompt 1
timeout 10
label linux
kernel bzImage
append initrd=initrd.img vga=792
內容主要指定kernel映像檔、ramdisk、螢幕的參數等

[USB linux] 4.建置busybox

沒有留言:


Linux下常見的指令,都是由「程式」所組成,但是這些程式如果全部放進來,也會佔掉不少空間,因此有了busybox
busybox包含了數十種Linux下常見的標準工具,例如ls, cp, cat, more....
甚至包含了http server,但是全部加起來都只有幾百k的大小,是作為嵌入式系統工具庫更好的選擇。

下面就來介紹該怎麼組態、編譯、安裝busybox

回到我們的工作目錄,並解開busybox

 cd ~/build-usb-linux
 tar -jxf busybox-1.13.2.tar.bz2
 cd busybox-1.13.2
先進行組態設定
 make menuconfig

先設定安裝目錄,將installation prefix設為剛剛所建立的ramdisk掛載點
這邊不能使用"~"來作為家目錄,所以你必須填上完整的路徑。
  Busybox Settings  --->
    Installation Options  --->
      (/home/koukai/build-usb-linux/initrd
) BusyBox installation prefix
設定交叉編譯器的選項如下的cross compiler prefix,但因為我們要跑在自己電腦上,所以可以忽略交叉編譯器的設定無所謂,
  Busybox Settings  --->
    Build Options  --->
      [*] Build BusyBox as a static binary (no shared libs)
      ()  Cross Compiler prefix
例如你所用的是arm-linux-gcc,就要將prefix設為arm-linux-

然後要選取將busybox編為靜態連結!!!!

[USB linux] 3.建立ramdisk的root filesystem (initrd)

沒有留言:
接下來,要建立Linux的root filesystem,也就是打造整個Linux下面的檔案系統環境
為什麼要放在ramdisk呢?一來速度快,二來ramdisk映像檔經過壓縮可以變得更小。
缺點是檔案系統要更新的話很麻煩,要重新掛載映像檔、修改、卸載、壓縮。
不過嵌入式系統的變更頻率不高,這樣做還是ok的。
這個ramdisk叫做是initrd,initial ramdisk。

首先,建立一個zero-filled的檔案,全設為0可以讓壓縮未用的空間更有效率。
我們從/dev/zero處複製一共8192個block到ramdisk這個檔案中,每個block大小為1k,因此這個檔案為8MB
 cd ~/build-usb-linux
 dd if=/dev/zero of=ramdisk bs=1k count=8192


接著,將他格式化成ext2的格式。
 mkfs.ext2 -v -F -m0 ramdisk

我們將他掛載起來,就像掛載虛擬光碟一樣。
 mkdir initrd
 sudo mount -o loop ramdisk initrd/